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.com
和 support.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/
.
有谁知道任何 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.com
和 support.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/
.