我想强制一个 www.使用 .htaccess 301 重定向在我的网站上添加前缀。我目前正在尝试:
RewriteCond %{HTTP_HOST} ^mysite.com [NC]
RewriteRule ^(.*)$ http://www.mysite.com/$1 [L,R=301]
这通常有效,但我使用的是 Zend Framework,它导致所有请求都被重定向回 http://www.mysite.com/index.php无论初始请求如何。
例如……
http://mysite.com/blog,
http://mysite.com/contact,
http://mysite.com/blog/this-is-my-article,
将全部重定向到http://www.mysite.com/index.php
但是,如果我最初请求特定文件,例如...
http://mysite.com/some-file.htm
重定向正常,重定向到http://www.mysite.com/some-file.htm
最佳答案
第一次,不要忘记启用重写(“RewriteEngine on”)。 如果您使用 Zend Framework,最后一行很重要。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mysite.com [NC]
RewriteRule ^(.*)$ http://www.mysite.com/$1 [L,R=301]
RewriteRule !\.(pdf|php|js|ico|txt|gif|jpg|png|css|rss|zip|tar\.gz)$ index.php
现在 url...
http://mysite.com/some-file.htm
...重定向到http://www.mysite.com/some-file.htm但使用 index.php
关于zend-framework - 如何使用 .htaccess 强制 www.在使用 Zend 框架时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/673778/