我正在尝试使用查询字符串将旧网址重写为新网址。尝试了20多种不同的变体,大多数不起作用或给我内部服务器错误
原始网址:
/got_forms/?List=keywordsearch&MyKeyWordSearch=Malcom
我需要将其重写为
/members/forms-publication-keyword/Malcom
我遇到的问题是无论我尝试?List=keywordsearch&MyKeyWordSearch
通过什么。
我试图这样做的一些不同方式:
RewriteCond %{QUERY_STRING} ^List=([0-9]{4})&MyKeyWordSearch=([0-9]*)$
RewriteRule ^publ_forms\/?$ /members/forms-publication-keyword/%2? [L]
没用。
RewriteRule ^/got_forms.*MyKeyWordSearch=(.*) http://www.domain.com/members/forms-publication-keyword/$1
没用。
#RewriteRule ^/got_forms/$ /members/forms-publication-keyword/ [NC,L,R=301]
#RewriteCond %{QUERY_STRING} ^MyKeyWordSearch=(.*)$ [NC]
#RewriteRule ^/got_forms/$ /members/forms-publication-keyword/%1 [NC,L,R=301]
任何想法我做错了什么?
答案 0 :(得分:0)
您可以在DOCUMENT_ROOT/.htaccess
文件中使用此代码:
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} ^List=keywordsearch&MyKeyWordSearch=([^&]+) [NC]
RewriteRule ^got_forms/?$ members/forms-publication-keyword/%1? [L,NC,R=302,NE]