RewriteRule不起作用

时间:2011-05-18 06:23:27

标签: apache http mod-rewrite url-rewriting

我正在尝试在httpd.conf文件中添加重写规则,但它无效。

以下是相关部分:

RewriteRule ^/taxonomy/term/([0-9]+)$ http://www.example.com/taxonomy/term/$1 [R=301, L]

目前,我的网站名称是www.domain.com,我正尝试通过taxonomy/term/{integer} {{1}将所有以httpd.conf开头的网址重定向到我的新域名www.example.com }。

3 个答案:

答案 0 :(得分:11)

Apache必须抱怨:

  

RewriteRule:坏标记分隔符

删除标记中的空白区域。改变这个:

[R=301, L]

为:

[R=301,L]

注意:如果您在每个目录的htaccess文件中使用该规则,则需要省略前导斜杠:

RewriteRule ^taxonomy/term/([0-9]+)$ http://www.example.com/taxonomy/term/$1 [R=301,L]

答案 1 :(得分:0)

删除开头的斜杠:

 RewriteRule ^taxonomy/term/([0-9]+)$ http://www.example.com/taxonomy/term/$1 [R=301, L]

答案 2 :(得分:0)

在httpd.conf中尝试这个(删除空格,不要删除斜杠):

RewriteEngine on
RewriteRule ^/taxonomy/term/([0-9]+)$ http://www.example.com/taxonomy/term/$1 [R=301,L]