我最近转移到使用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