在 .htaccess 中使用 HTTPS 将旧域重定向到新域
Posted
技术标签:
【中文标题】在 .htaccess 中使用 HTTPS 将旧域重定向到新域【英文标题】:Redirect an Old Domain to a New Domain with HTTPS in .htaccess 【发布时间】:2016-02-18 17:41:30 【问题描述】:假设我们有, 旧域:http://www.olddomain.com
新域名:https://www.newdomain.org
这是我的 .htaccess 文件数据:
RewriteEngine On
RewriteCond %HTTPS off
RewriteRule ^(.*)$ https://%HTTP_HOST%REQUEST_URI [L,R=301]
RewriteCond %HTTP_HOST ^olddomain\.com$ [OR]
RewriteCond %HTTP_HOST ^www\.olddomain\.com$
RewriteRule ^/?$ "https\:\/\/www\.newdomain\.org\/" [R=301,L]
有时在重定向时,浏览器会显示安全错误,使其不受信任。
现在,
-
如何做到这一点?
如何将其从非 www 重定向到 www ?
【问题讨论】:
【参考方案1】:在测试之前更改规则的顺序并清除浏览器缓存:
RewriteEngine On
RewriteCond %HTTP_HOST ^(www\.)?olddomain\.com$ [NC]
RewriteRule ^ https://www.newdomain.org%REQUEST_URI [L,R=301]
RewriteCond %HTTP_HOST !^www\. [NC]
RewriteRule ^ https://www.newdomain.org%REQUEST_URI [L,R=301]
RewriteCond %HTTPS off
RewriteRule ^ https://%HTTP_HOST%REQUEST_URI [L,R=301]
【讨论】:
安全错误已清除!但它无法将非 www 转换为 www。 完美@anubhava!非常感谢! 完美,我不小心为临时域保留了 301,浏览器缓存抛出 ssl 错误,这个问题解决了以上是关于在 .htaccess 中使用 HTTPS 将旧域重定向到新域的主要内容,如果未能解决你的问题,请参考以下文章
.htaccess 301 将旧域上的所有页面重定向到新域上的单个页面