我似乎無法讓myredirects正常工作。我的目標是:www和https重定向不能按要求工作
目標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虛擬主機如下:
方法1.
<If "%{HTTP_HOST} != 'www.enmowe.com'">
Redirect "/" "https://www.%{HTTP_HOST}/$1"
</If>
<If "%{SERVER_PROTOCOL} != 'HTTPS'">
Redirect "/" "https://www.%{HTTP_HOST}/$1"
</If>
方法2
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 –