2011-01-03 22 views
1

私のフレームワーク[Fat Free Frameowkr]がそれを処理する私のindex.phpページにすべての.htaccessファイルが送信されるはずです。.htaccessとmod_rewriteの問題

しかし、私がhttp://www.site.com/に行っても動作します。 http://www.site.com/aboutに行くと、404エラーが発生します。

アイデア?

# Enable rewrite engine and route requests to framework 
RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule .* index.php [L,QSA] 

# Disable ETags 
Header Unset ETag 
FileETag none 

# Default expires header if none specified (stay in browser cache for 7 days) 
<IfModule mod_expires.c> 
ExpiresActive On 
ExpiresDefault A604800 
</IfModule> 
+0

さらにデバッグする必要があります(['RewriteLogLevel'](http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriteloglevelを参照) )。 – Gumbo

+0

私は 'rewrite.log'をセットアップしましたが、高いデバッグレベルでもエラーは出ません。ただ404. – ian

+0

あなたは解決策を見つけましたか? –

答えて

0

(この部分にあなたが.htaccessのオーバーライドを許可している場合は、あなたの.htaccessは、念のチェックのためにそれほどの.htaccess を経由して要求をキャッチしていない直接場合に

# Enable rewrite engine and route requests to framework 
RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^/(.*)$ index.php/$1 [L,QSA] 

HTTP 404個のリンクをお試しくださいhttpd conf、AllowOverride