htaccess 重定向子域和所有链接

htaccess redirects for subdomain and all links

有谁知道任何 301 .htaccess 规则,而不是涵盖网站上的所有链接。下面是几个例子:

示例:

https://support.olddomain.com/
https://support.newdomain.com/

https://support.olddomain.com/id.php?pp=sdf-sdf-sdf&r=13
https://support.newdomain.com/id.php?pp=sdf-sdf-sdf&r=13

如果两个主机名(即 support.olddomain.comsupport.newdomain.com)指向不同的服务器,那么您可以在 .htaccess 旧域中的文件。例如:

# Redirect everything to the new-domain (like for like URLs)
Redirect 301 / https://support.newdomain.com/

但是,如果两个主机名指向同一个地方,那么您需要使用 mod_rewrite 并明确检查请求的主机名以避免重定向循环。例如:

RewriteEngine On

# Redirect everything to the new-domain (like for like URLs)
RewriteCond %{HTTP_HOST} =support.olddomain.com
RewriteRule ^ https://support.newdomain.com%{REQUEST_URI} [R=301,L]

两组规则做同样的事情...即。 301 重定向 https://support.newdomain.com/<url-path>?<query-string> 到相同的 <url-path><query-string>https://support.newdomain.com/.