如何使用htaccess进行状态码为301的永久重定向?

时间:2018-05-25 08:56:13

标签: php .htaccess http-status-code-301

我的htaccess中有以下代码:

RewriteRule ^test.html$ index.php?ctrl=location&action=view [L]

问题是我的页面可以通过2个地址访问:

  • ./的index.php CTRL =位置&安培;行动=视图
  • ./ test.html

我希望如此,当我在网址中输入http://website.com/index.php?ctrl=location&action=view时,它会重定向到http://website.com/test.html

我试过以下但是反过来说:

RewriteRule ^test.html$ index.php?ctrl=location&action=view [R=301,L]

我尝试了其他的东西,但它从未奏效。

1 个答案:

答案 0 :(得分:0)

您可以使用:

RewriteEngine on

#redirect from old url to the new one
RewriteCond %{THE_REQUEST} /index.php\?ctrl=location&action=view [NC]
RewriteRule ^.+$ /test.html? [L,R=301]
# map new url to the old location
RewriteRule ^test\.html$ /index.php?ctrl=location&action=view [L]