我遇到从example.com(到)www.example.com重定向页面的问题
我的代码是:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^subdomain\.domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.subdomain.domain.com/$1 [L,R=301]
它没有用,有什么帮助吗?
答案 0 :(得分:2)
您需要做的就是强制域名的www版本?就这样做......
# Force www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
答案 1 :(得分:0)
这是我的重写看起来的样子,并且有效:
## REWRITE RULES
# enable rewrite
RewriteEngine On
RewriteBase /
# enforce a specific domain in the url
RewriteCond %{HTTP_HOST} !^www\.sub\.domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.sub.domain.com/$1 [R=301,NC,L]
此规则会将任何非www.sub.domain.com
的内容重定向到www.sub.domain.com
。
答案 2 :(得分:0)
更新:根据你的评论It does not redirect and it gives me the openDNS page
,我认为你的问题不是(还是?)mod_rewrite。
尝试在Options +FollowSymlinks
之前添加RewriteEngine On
,然后在RewriteBase /
之后添加RewriteEngine On
。
我建议您阅读找到here的Fatal Redirection
和rewrite logging
部分。
您可以启用mod_rewrite
调试以查看正在发生的事情(如果有的话):
RewriteLog "/tmp/rewrite.log"`
RewriteLogLevel 5