因此,我的客户将其旧域名更改为具有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]
答案 0 :(得分:0)
由于\olddomain.com$
\o
是不正确的正则表达式
尝试此规则:
RewriteEngine On
RewriteCond %{HTTP_HOST} olddomain\.com$ [NC,OR]
RewriteCond %{HTTPS} off
RewriteRule ^ https://www.newdomain.com%{REQUEST_URI} [L,NE,R=301]
答案 1 :(得分:0)
没有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了解详细信息。