mod_rewriteの設定

広告

mod_rewriteとはURLの書き換えなどを行うモジュールです。CakePHPを使用する上でmod_rewriteモジュールは必須ではありませんが、mod_rewriteモジュールが使えない場合にはCakePHPへアクセスする時のURLが長くなるなど不便な点がいくつかあります。特に理由が無い場合はmod_rewriteモジュールを有効にしておきます。

1.mod_rewriteの設定
2..htaccessに関する設定

mod_rewriteが有効になっていない場合は次のように背景色が赤でメッセージが表示がされています。

p3-1

URL rewriting is not properly configured on your server. 1) Help me configure it 2) I don't / can't use URL rewriting

では設定を行います。Apache(今回は2.2系です)をWebサーバとして使用している場合には「http.conf」ファイルを編集します。

まずhttp.confファイル内で「LoadModule rewrite_module modules/mod_rewrite.so」を検索して下さい。

#LoadModule rewrite_module modules/mod_rewrite.so

先頭に「#」が付いている場合はコメントとなっています。そこで先頭の「#」を削除して下さい。

LoadModule rewrite_module modules/mod_rewrite.so

mod_rewriteに関する設定は以上です。

次に「.htaccess」ファイルが使用できるように設定します。「CakePHP」を設定したディレクトリに対して「AllowOverride」を「All」に設定します。今回は下記のような設定を「http.conf」ファイルの最後に追加しました。

<Directory "C:/pg/Apache/Apache2.2/htdocs/cake">
    Options FollowSymLinks
    AllowOverride All
</Directory>

設定は以上で終了です。設定が終わりましたらApacheを再起動すると設定が有効となります。

では改めてブラウザを起動して「http://localhost/cake/」へアクセスして下さい。mod_rewriteモジュールが有効になっていると表示される画面が次のようになります。

p3-2

表示されていたメッセージが消えると共に、画面表示も大幅に変わりました。これで全ての設定が完了しCakePHPのインストールも完了です。

( Written by Tatsuo Ikura )