せっかくなので、家でもフレームワーク使ってなにかwebサービス作ってみようかなと思ってCakePHPを導入した。なんかしょっぱなからつまってしまった。『SampleControllerを作ろう!』のサンプルコードが動かない。
Apacheの設定上書き機能がOFFになっていたことが原因だったらしい。CookbookのAdvanced Installationのページを参考にして、以下を実施したら解決した。
1. /etc/apache2/sites-available/defaultの「AllowOverride」の部分をNoneからAllにする。
2. Apacheを再起動する
動いたのはいいけど、そもそもこれって何なのかよく理解できていないので、『Apache の基本的な設定』を参考にちょっと調べてみた。
まず、「.htaccess」ファイルについて。このファイルはこれが置かれたディレクトリとそのサブディレクトリについてのアクセス設定を行うファイル。
次に/etc/apache2/sites-available/defaultのAllowOverrideの項目について。この項目は、defaultファイルで設定した一般的な設定を、ドキュメントルート配下のサブディレクトリで上書きできるかどうかを設定するもの。この項目をNoneとしていれば、上書きを許可しないので、「.htaccess」でアプリケーション固有のアクセス設定を書いたとしても無視される。この設定をAllとすれば、各アプリケーションの「.htaccess」で定義した設定が、defaultの設定を上書きアクティブになる。
0 件のコメント:
コメントを投稿