の手順でブラウザから参照した際、「Not Found」になる場合がある。
Webではトップディレクトリ配下にCakePHPプロジェクトを置いて実行することを念頭にしているので、サブディレクトリを切って開発環境を作ったりしているとこうなるみたい。
解決策としては、.htaccessのmod_rewrite設定を変更すればいい。
- CakePHPコアファイルを格納した先
- /usr/lib/cake
- appディレクトリ
- /home/username/todo
- webrootディレクトリ
- /home/username/public_html/todo
- 公開URL
- http://localhost/~username/todo
で構成した場合の内容。
<IfModule mod_rewrite.c> RewriteEngine on RewriteBase /~username/todo/ RewriteRule ^$ / [L] RewriteRule (.*) /$1 [L] </IfModule>
webrootの.htaccess
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase /~username/todo/ RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] </IfModule>
まあ、「CakePHP mod_rewrite」でググるともりもりヒットするけど。