私は php と Yii の初心者であり、これは非常にばかげた質問と思われるかもしれません。Mac OS X で Yii フレームワークを使用して Web アプリケーションを開発しています。私が取り組んでいるコードベースは、Windows マシン上でセットアップされ、Windows OS 上で完全に正常に動作します。しかし、Mac OS X で実行しようとすると、404 not found エラーが発生します。main.php 設定ファイルの URL ルーティングに問題があるようです。
私のURLマネージャーには次のコードがあります
'urlManager'=>array(
'showScriptName'=>false,
'caseSensitive'=>true,
'urlFormat'=>'path',
'rules'=>array(
'' => 'home',
'learn-more' => 'home/learn_more',
'cpi' => 'cpi/index',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'<controller:\[\w\-]+>/<action:\[\w\-]+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\[\w\-]+>/<action:\[\w\-]+>/<code:\w+>'=>'<controller>/<action>',
'<controller:\[\w\-]+>/<action:\[\w\-]+>'=>'<controller>/<action>',
),
),
私のフォルダ構造は次のようになります
> protected
> components
> config
> controllers
> views
> about
> careers
> contact
> cpi
> devadmin
> error
> home
> info
> layouts
プロジェクト フォルダーの .htaccess ファイルには、次のコード行があります。
RewriteEngine on
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule . index.php
私のホームページhttp://mysite.comは /home/index (つまり、HomeController の index アクション) にマップする必要があり、これは完全に機能します。「views」の下の他の各フォルダーには、index.php ファイルがあります。タイプhttp://mysite.com/devadminの URLを /devadmin/index にマップする必要があります。既存のルールは、Windows OS で実行すると完全に機能しますが、Mac OS ではエラーが発生します。URL マネージャーに Windows 固有のコードがあるかどうか疑問に思っています。誰かがこれに対する解決策を提案してくれたらうれしいです。