使用.htaccess将HTTPS重定向到子域

时间:2016-07-04 11:04:33

标签: php apache .htaccess

我想重定向两者 https://website.me/https://www.website.me/https://es.website.me/

此规则不起作用

RewriteCond %{HTTPS} !^on$
RewriteRule (.*) https://es.website.me/$1 [R,L]

4 个答案:

答案 0 :(得分:2)

使用以下htaccess

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?website\.me$ [NC]
RewriteRule ^(.*)$ https://es.website.me/$1 [R=301,L]

答案 1 :(得分:0)

尝试使用此方法进行重定向:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^website.me$ [OR]
RewriteCond %{HTTP_HOST} ^www.website.me$
RewriteRule (.*)$ https://es.website.me/$1 [R=301,L]
</IfModule>

答案 2 :(得分:0)

您想重定向还是重写?

要使用代码301(永久移动)重定向,请创建2个虚拟主机;一个用于真实网站,另一个用于您要重定向的所有网址。在重定向主机中,添加以下行:

Redirect 301 / https://es.website.me/

答案 3 :(得分:0)

由于您只想在已经使用HTTPS的情况下进行重定向,因此您必须与主机名一起检查它。

RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^(www\.)?website\.me$ [NC]
RewriteRule ^ https://es.website.me%{REQUEST_URI} [R,L]

如果一切正常,您可以将R替换为R=301。切勿使用R=301进行测试。