我的旧网站有数百个网址,如下所示:
http:www.domain.com/Contact.asp?Pid = 344
http:www.domain.com/Contact.asp?Pid = 345
HTTP:www.domain.com/Contact.asp PID = 346
依旧......
我需要将所有这些内容永久移动到一个网址:
的http:www.domain.com/contact
我试过了:
RewriteCond %{QUERY_STRING} Contact.asp?Pid=([0-999]+)
RewriteRule ^http://www.domain.com/contact? [L,R=301]
但它效果不好。
旧网站使用ASP
。新网站建立在Joomla
上。该域名将是旧网站的域名
答案 0 :(得分:1)
你很亲密。您需要使用%{QUERY_STRING}
变量,但var 不包含URI路径(Contact.asp?
)部分。此外,您的RewriteRule
缺少正则表达式模式。尝试:
RewriteCond %{QUERY_STRING} Pid=([0-999]+)
RewriteRule ^/?Contact\.asp$ http://www.domain.com/contact? [L,R=301]
答案 1 :(得分:0)
RewriteRule ^Contact.asp?Pid=(\d) /contact? [L]
答案 2 :(得分:0)
您在那里只有联系页面的页面吗?您只需301整个目录,因为它们都移动到一个URL。
RewriteEngine on
RewriteBase /
RewriteRule ^/(.*)$ http://www.domain.com/$1 [R=301,L]