我有一些旧的URL,我想要修复,因为论坛迁移。
旧url的格式如下所示: http : //www.example.com/forum/topic.asp?TOPIC_ID=666
我想将它们redirect到: http : //www.example.com/forum/missions/666
我的方法是这样的,但是我正在挠头,因为它根本不起作用:
RewriteCond %{QUERY_STRING} ^TOPIC_ID=(.*)$ [NC] RewriteRule ^/forum$ /forum/missions/%1 [NC,L,R=301]
假设`/ forum /中没有.htaccess,你可以在你的根目录.htaccess中使用这个第一条规则 :
RewriteCond %{QUERY_STRING} ^TOPIC_ID=([^&]+) [NC] RewriteRule ^forum/topic\.asp$ /forum/missions/%1? [NC,L,R=302]
如果/forum/
有.htaccess,那么你可以在/forum/.htaccess
使用这个第一条规则 :
RewriteCond %{QUERY_STRING} ^TOPIC_ID=([^&]+) [NC] RewriteRule ^topic\.asp$ /forum/missions/%1? [NC,L,R=302]
我建议这个,但不能从这里真正尝试:)
<Ifmodulee mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^forum/topic.asp\?TOPIC_ID=([0-9]+)$ forum/missions/$1 [L] </Ifmodulee>