【发布时间】:2018-03-28 11:27:51
【问题描述】:
我似乎无法让 myredirects 正常工作。我的目标是:
目标 1 已经实现,但问题是重定向 http://www.example.com 到 https://www.example.com,实际上导致 404 错误。我使用Ryte 确定问题如下:
https://enmowe.com/ (403) is not reachable
http://enmowe.com/ (301) is forwarding to https://www.enmowe.com/ (200)
https://www.enmowe.com/ (200) is available
http://www.enmowe.com/ (404) is not reachable
我在我的 Apache VirtualHost 中尝试了以下操作:
方法一。
<If "%{HTTP_HOST} != 'www.enmowe.com'">
Redirect "/" "https://www.%{HTTP_HOST}/$1"
</If>
<If "%{SERVER_PROTOCOL} != 'HTTPS'">
Redirect "/" "https://www.%{HTTP_HOST}/$1"
</If>
方法二。
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www.\.enmowe\.com)?$
RewriteRule (.*) https://www.enmowe.com/$1 [R=301,L,NC]
方法3。
RewriteEngine on
RewriteCond %{SERVER_NAME} =enmowe.com
RewriteRule ^ https://www.%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
现在有点迷茫
【问题讨论】:
-
apache 是否有 www.enmowe.com 的虚拟主机条目,因为如果没有,则重写规则无法触发....
-
www.enmowe.com 已设置为虚拟主机中的 ServerAlias
标签: apache ssl redirect virtual-hosts