2012年6月25日月曜日

CakePHP 複数アプリの実行

CakePHP で複数アプリを実行する。

1. virtual host を設定して複数アプリを別々ホスト名で起動する。

2. .htaccess を修正する。(忘れがちなので注意)
[root@hoge sample]# cat .htaccess

   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]

[root@hoge sample]# 
 
  ↓↓↓


   RewriteEngine on
   RewriteRule    ^$ webroot/    [L]
   RewriteRule    (.*) webroot/$1 [L]

サブディレクトリにcakePHPを構築する
もしサブドメインに構築する場合には、.htaccessの設定に追記が必要となる。
具体的には、RewriteBaseをきちんと設定にあるような

app/webroot/.htaccess にあるmod_rewriteの設定において RewriteBase /(サブディレクトリ名)を追加する必要がある。

もし、追加し忘れると、500 Internal Server Errorが表示され、Apacheのログには、

Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.

というメッセージが記録される。

今までDocumentRoot上にしか構築したことがなかったので、少しハマってしまった。

0 件のコメント:

コメントを投稿