如何在301重定向中使用RewriteRule URL

时间:2017-05-08 06:16:29

标签: .htaccess redirect

我目前的网址结构是:

RewriteRule ^([^/]*)_([^/]*).uz$    postview.php?url=$1&authorurl=$2 [L]

现在我想使用斜杠而不是下划线,例如:

RewriteRule ^([^/]*)/([^/]*).uz$    postview.php?url=$1&authorurl=$2 [L]

如何将旧网址重定向到新网址?

我试过这样,

Redirect 301 ^([^/]*)_([^/]*).uz$ ^([^/]*)/([^/]*).uz$

不能正常工作。

1 个答案:

答案 0 :(得分:1)

Redirect规则中,您在源网址和目标网址中都使用正则表达式模式,除了Redirect之外,甚至不接受正则表达式。

您可以使用所有mod_rewrite规则执行此操作:

RewriteEngine On
RewriteBase /site/

RewriteRule ^([^_]*)_([^.]+\.uz)$ $1/$2 [L,NC,R=301,NE]
RewriteRule ^([^/]+)/([^.]+)\.uz$ postview.php?url=$1&authorurl=$2 [L,NC,QSA]