.htaccess重写以使用http / https将别名重定向到根域子目录

时间:2018-06-25 12:56:05

标签: .htaccess http redirect https url-redirection

我已经在htaccess中设置了重定向,以将别名重定向到子目录:alias.example.com正在重定向到www.example.com/folder。

这是我的代码:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?alias.example\.com$ [NC]
RewriteRule ^ https://www.example.com/folder%{REQUEST_URI} [NE,R=301,L]

已设置SSL,它可以很好地适用于https://alias.example.com/page之类的任何URL,这些URL会转到https://www.example.com/page

但是,如果别名URL位于http中,则会转到404错误页面:http://alias.example.com/pagehttp://www.example.com/404

我在代码中缺少什么吗?

谢谢

1 个答案:

答案 0 :(得分:0)

下面是相同的工作代码。

RewriteEngine on
RewriteCond %{HTTPS} !on [OR]
RewriteCond %{HTTP_HOST} ^alias.example.com [NC]
RewriteRule ^ https://www.example.com/folder%{REQUEST_URI} [NE,L,R=301]

htaccess重写规则的演示/测试位于htaccess tester

我们已将 https 以及带有别名{strong> rewrite 的规则与OR子句结合在一起

遵循此规则

http://alias.example.com/page重定向到https://www.example.com/folder/page