2013-04-11 38 views
5

我需要重定向一個域https://www.mydomain.com to https://mydomain.com.我使用這個.htaccess,它不適用於我。使用htaccess將所有https://www.mydomain.com重定向到https://mydomain.com(cPanel中的2個SSL主機)

以前我有https://www.mydomain.com的SSL證書,它被打破了,我們註冊了新的SSL主機https://mydomain.com

在南國只有一個SSL主機,但在的cPanel有兩臺主機一個老www.mydomain.commydomain.com(對重定向有影響嗎?)

.htaccess位於下方。

RewriteEngine on 

RewriteCond %{HTTPS} on 
RewriteCond %{HTTP_HOST} ^www\.mydomain\.com$ [NC] 
RewriteRule ^(.*)$ https://mydomain.com/$1 [R=301,L] 

RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^(www\.)?mydomain\.com$ [NC] 
RewriteRule ^(.*)$ https://mydomain.com/$1 [R=301,L] 

當我輸入https://www.mydomain.com時,我總是收到安全警報。

我在這裏做了什麼錯誤?

在此先感謝

+0

是什麼2之間的區別3 – 2013-04-11 08:10:33

+0

我在第3天使用{HTTPS_HOST} – Pus 2013-04-11 08:11:06

回答

0

什麼是這裏的錯誤呢?

的錯誤是,有沒有%{HTTPS_HOST}變量。 %{HTTP_HOST}是作爲HTTP協議一部分的請求標頭(主機)。你不需要3號線,你想要做的是檢查請求是否是HTTPS使用%{HTTPS}變量就像你在第一個條件正在做的:

RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^(www\.)?mydomain\.com$ [NC] 
RewriteRule ^(.*)$ https://mydomain.com/$1 [L,R=301] 

RewriteCond %{HTTPS} on 
RewriteCond %{HTTP_HOST} ^www\.mydomain\.com$ [NC] 
RewriteRule ^(.*)$ https://mydomain.com/$1 [L,R=301] 
+0

感謝您的回覆,但我無法將「https://www.mydomain.com」重定向到「https://mydomain.com」。這裏的主要問題是,由於服務器問題,我有ssl證書「https://www.mydomain.com」,ssl is break,並在「http://mydomain.com」中新安裝ssl。這是問題嗎?你說的話? – Pus 2013-04-11 08:52:52

相關問題