我最近轉移到使用Symfony2 PHP框架,並希望從一開始就包括html5boilerplate所有的迷人,但有一些問題合併.htaccess兩個文件。400錯誤的請求與Symfony2和html5boilerplate重定向規則
前三名來自樣板;從www.example.com重定向到example.com,example.com/test爲example.com/test/,並限制訪問任何前綴爲a的文件夾。 (例如.git)。
最後是Symfony2對前端控制器的重寫。如果沒有其他重定向發生,我希望能夠訪問它(所以example.com/hello/應該達到它)。
<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/|#(.*))$
RewriteRule ^(.*)$ /$1/ [R=301,L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteRule "(^|/)\." - [F]
</IfModule>
<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
如果最後重寫被註釋掉,阿帕奇返回400錯誤的請求,我不明白爲什麼..重定向設置爲外部(R = 301),因此它應該重新評估,並去app.php之一。
重寫也已設置爲打開。
任何建議將是巨大的,沒有太大的重寫的buff =(
嘗試沒有任何額外的html5boilerplate配置的配置,你是對的,它確實有效。認爲問題與重定向分開。謝謝=)將繼續尋找原因,而不是與上述做。 – domudall 2011-05-31 12:57:18