1

我有一个网站,我想让它始终显示为 www.mysite .com 我将该代码放在 .htaccess 中:

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{HTTP_HOST} !^www\.
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
</IfModule>

现在 url 显示为 www 但网站未显示浏览器说“这个网页有一个重定向循环”

注意:.htcaccess 没有任何代码,但我写了这几行

我做错了什么还是我错过了什么???请帮忙

编辑:

在我添加上面的代码之前,.htaccess 有以下代码但不直接到 www 我删除它:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

RewriteCond %{QUERY_STRING} ^m=1$
RewriteRule (.*) $1? [R=permanent]

# END WordPress

可以更新以解决我的问题吗?

4

3 回答 3

0

如果您在 Windows 服务器上执行此操作,则如果它是窗口,则它将无法工作,您必须为 linux 创建 web.config 文件 n 它应该是 .htaccess

于 2013-09-20T12:18:53.493 回答
0

好的,所以 Wordpress也在那里。确保做这 2 件事:

  1. 将您的301规则置于 WP 的规则之上,RewriteBase即在行下方
  2. 更新 WP 设置以使用您的网站地址www
于 2013-09-20T12:30:37.713 回答
0
RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]

或者

RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
于 2013-09-20T12:30:45.580 回答