1

我正在尝试创建一个 URL 重定向,但到目前为止,我所尝试的一切都没有对网站产生任何影响。我知道 ModRewrite 已启用,因为还有其他重写发生。这样做的全部目的是处理来自网站旧版本的旧 URL。

我想要实现的是具有以下格式的 URL 重定向:
/resources/view?id={id}并将其重定向到/resources/{id}.

我一直在尝试使用以下变体:

RewriteRule ^resources/view?id=([0-9+])$ /resources/$1 [R=301,L]

还有这个:

RewriteCond %{QUERY_STRING} ^id=([0-9]*)$
RewriteRule ^/resources/view$ /resources/$1? [R=301,L]

干杯。

4

1 回答 1

0

您可以在站点根目录 .htaccess 中使用这 2 条规则:

Options -MultiViews
RewriteEngine On

# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} /resources/view\?id=(\d+) [NC]
RewriteRule ^ /resources/%1? [R=301,L,NE]

# internal forward from pretty URL to actual one
RewriteRule ^resources/(\d+)/?$ resources/view?id=$1 [L,QSA,NC]
于 2016-09-21T12:16:15.293 回答