.htaccess规则来捕获http和https

时间:2015-07-09 21:56:08

标签: apache .htaccess mod-rewrite

我们最近更改了域名并在我们的.htaccess文件中使用它来重写网址:

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

我之前意识到旧网站使用的是https://所以,这就是所有旧链接的用途。如何为https AND http?

重写此规则

我尝试使用带有$ {HTTPS_HOST}的其他行的OR,但这不起作用。

- - - - - - - - 编辑

澄清一下,这是我想要的结果

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

1 个答案:

答案 0 :(得分:0)

您可以使用:

RewriteEngine On

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