我们为旧网站设置了永久 301 重定向,现在正在将其重定向到新网站上的页面。是否可以在新网站的 Apache 服务器上设置 .htaccess 规则,将来自这个旧的“301 重定向”网站的请求定向到新网站上的特定页面?
我们的 .htaccess 文件中有一条规则,其中包含一个条件,即请求来自旧域,并且请求的 URL 中包含查询字符串。根据查询字符串,我们会重定向到某个页面,但它似乎不起作用,所以我想知道这是否有可能:
RewriteCond %{HTTP_REFERER} ^http://oldomain.com [NC] RewriteCond %{QUERY_STRING} ^thequerystring=([0-9]*) 重写规则 ^(.*)$ https://www.newdomain.org/redirect.php?theimage=%1 [R=301,L]
Apache 版本为 Apache/2.4.57 (Unix),nginx 为 1.22.0
答案1
如果两个站点位于同一台服务器上:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^oldomain\.com$ [NC]
RewriteCond %{QUERY_STRING} ^thequerystring=([0-9]*)$
RewriteRule ^(.*)$ https://www.newdomain.org/redirect.php?theimage=%1 [R=301,L]