2015-07-09 73 views
0

我们最近改变域和正在使用这个在我们的.htaccess文件来重写这些URL:的.htaccess规则赶上http和https

RewriteEngine On 
RewriteCond %{HTTP_HOST} old.com [NC] 
RewriteRule ^(.*)$ https://new.com/$1 [L,R=301] 

我刚才意识到,旧的网站是使用https://开头这样,这就是所有旧链接去的地方。我如何使这个规则重写为https和http?

我尝试使用OR与$ {HTTPS_HOST}的另一行,但没有奏效。

----- -----编辑

为了澄清,这里是结果,我想

http://oldsite.com/ * - >https://newsite.com/ *

https://oldsite.com/ * - >https://newsite.com/ *

眼下,http://oldsite.com/ *重定向到https://newsite.com/ *,但

https://oldsite.com/ *重定向到服务器上的主站点。刚刚从4403打到同一个IP,而不是重定向到newsite.com

回答

0

您可以使用:

RewriteEngine On 

RewriteCond %{HTTP_HOST} old\.com$ [NC] 
RewriteCond %{HTTPS}s on(s)| 
RewriteRule^http%1://new.com%{REQUEST_URI} [L,R=301] 
+0

有了这个,HTTPS:网址去现场(其中该.htaccess文件所在的服务器上)使用SSL进行安全保护,这不是我想要重定向到的站点。 old.com被设置为other.com的插件域。所以https://old.com是去other.com,而不是new.com – KingRichard

+0

好吧,然后你可以澄清你的意思**我怎样才能使这个规则重写https和http?** – anubhava

+0

如果您删除此htaccess,然后访问'https:// oldsite.com/*'Chrome开发工具你看到什么? – anubhava