Daily Archives: 2009 年 3 月 9 日

ZendFrameworkで404エラー

0
Filed under .htaccess, Apache, php, Zend Framework
Tagged as ,

.htaccessでmod_rewriteを使って転送してるつもりが、
404エラーになってしまう。

Apacheのエラーログ(error_log)では、「File does not exist:」が
でてる状態なわけです。

こんな現象とちょっと戯れたので、メモしとく。

.htaccessの内容は以下。

## リライトエンジンを有効に。

RewriteEngine On

## リライトの対象パスを指定

RewriteBase /

## リライトルールを宣言(条件・アクセス先)

RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php

まあ、これで普通はmod_rewriteによって、該当領域にきたアクセスで
RewriteRuleで指定されている画像など以外のものは、
すべてindex.phpにアクセスされるようになるはずなんですね。

ここで大きな落とし穴がありました。
.htaccessの書き方が問題なくても、
そもそも.htaccessを有効にしてない場合があるわけです。

Apacheのhttpd.confに「AllowOverride」って項目があるわけです。
これが「None」とかになってると、.htaccessが利用できないです。

これは、サーバ管理者にお願いする形になっちゃうんでしょうけど、
修正するしかないですね。

ZendFrameworkのおすすめ書籍