从.htaccess重定向不起作用

时间:2013-09-20 12:07:57

标签: php wordpress apache .htaccess mod-rewrite

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

<IfModule mod_rewrite.c>
    RewriteEngine On

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

现在网址显示为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

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

3 个答案:

答案 0 :(得分:0)

如果你在Windows服务器上这样做它将无法工作如果它是窗口你必须为linux创建web.config文件n它应该是.htaccess

答案 1 :(得分:0)

好的,Wordpress也在那里。一定要做这两件事:

  1. 将您的301规则置于WP规则之上,即在RewriteBase
  2. 之下
  3. 更新WP设置,使您的网站地址为www

答案 2 :(得分: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]