因此,我的客户将他们的旧域更改为一个具有SSL证书的新域。旧的域名被索引为https://olddomain.com,即使我在Godaddy中更改了转发以转到新域,它也不会加载!我正在尝试使用htaccess文件重定向,但没有成功。所以,https://olddomain.com不会重定向,但如果你输入olddomain.com,它就会重定向。
谁能告诉我,我需要做些什么才能让https://olddomain.com重定向?仅供参考:我没有旧域名的托管设置。
我的htaccess文件是这样的:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.newdomain.com/$1 [R,L]
RewriteCond %{HTTPS_HOST} \olddomain.com$
RewriteRule ^(.*)$ https://www.newdomain.com$1 [R=301,L]发布于 2013-11-20 01:31:32
您的两个规则可以合并为一个,但由于\o,\olddomain.com$不正确的正则表达式
试试这个规则:
RewriteEngine On
RewriteCond %{HTTP_HOST} olddomain\.com$ [NC,OR]
RewriteCond %{HTTPS} off
RewriteRule ^ https://www.newdomain.com%{REQUEST_URI} [L,NE,R=301]发布于 2013-11-20 01:33:25
没有HTTPS_HOST这样的东西,有关可用变量的列表,请参阅RewriteCond。
您有可用的HTTP_HOST或HTTPS。如果你想重定向到https://newdomain.com,你只需要检查olddomain.com
RewriteCond %{HTTP_HOST} olddomain.com$
RewriteRule ^(.*)$ https://www.newdomain.com/$1 [R,L]不要忘记斜杠,因为在.htaccess上下文中,前面的斜杠会被删除。否则,http://olddomain.com/page.html将被重定向至https://www.newdomain.compage.html。并不完全是你所期望的。
切勿在启用301的情况下进行测试,有关详细信息,请参阅此答案Tips for debugging .htaccess rewrite rules。
https://stackoverflow.com/questions/20078043
复制相似问题