.htaccess重定向www到非www不工作

时间:2015-10-05 06:46:18

标签: regex apache .htaccess redirect

我对.htaccess编辑或正则表达式几乎一无所知。我尝试将我的网站从www版本重定向到non-www版本所做的工作是遵循此处发布的答案:

redirect www to non-www

但是,我得到的是,如果我输入www.example.com,我会得到:

example.com/example.com/以及我网站上的404错误

这是我的.htaccess文件:

#Adjust default time zone 
SetEnv TZ America/Toronto

#Begin redirect www to non-www
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [NE,R=301,L]

# Google Analytics Integration - Added by cPanel.
<IfModule mod_substitute.c>
AddOutputFilterByType SUBSTITUTE text/html
Substitute "s|(<script src='/google_analytics_auto.js'></script>)?</head>|<script src='/google_analytics_auto.js'></script></head>|i"
</IfModule>
# END Google Analytics Integration

有人可以告诉我我做错了吗?

1 个答案:

答案 0 :(得分:-1)

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]

即检查HTTP_HOST是否包含www,如果是,则重定向到非www,并附加request_uri。