2013-10-03 34 views
0

我在我的主域和幾個子域(應用程序,儀表板,支持,培訓)上使用通配符SSL。我面臨的問題是,當我嘗試通過HTTPS訪問子域時,它顯示根域的索引/主頁面,但是當通過HTTP訪問子域時,它顯示正確的頁面。我想知道我需要在.htaccess文件中添加哪些信息以創建子域:子域顯示錯誤的內容使用HTTPS

  1. 自動使用HTTPS。
  2. 使用HTTPS時,請在該子域上顯示正確的內容。

子域目前沒有.htaccess文件,因爲我不知道這裏應該放在那裏。

這裏是HTTP子域的一個示例:http://goo.gl/Mcg66l
這裏是HTTPS子域的一個示例:http://goo.gl/Aw9yl6
這裏是主域:http://goo.gl/TfLjuy

主域是做確切我希望它做什麼(www到非www和自動https重定向),但子域沒有做我想讓他們做的事情,如上所述。

這裏是關於主域名的.htaccess文件:在HostGator的服務經銷商帳戶

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

最後,我使用的cPanel。

感謝您看看這個問題!

+0

做HTTP和https VirtualHost條目指向該域的相同DOCUMENT_ROOT? – anubhava

+0

我不知道如何檢查。 – alexhoug

+0

你需要檢查Apache配置嗎? – anubhava

回答

0

我有同樣的確切問題,也使用HostGator帳戶。我找到了答案的另一個問題是you can find here.

他們去解決它通過採用HTTPS爲主域名,迫使HTTP上的一個子域,然後作爲獎金刪除所有WWW的

# for main domain 
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC] 
RewriteCond %{HTTPS} off [OR] 
RewriteCond %{HTTP_HOST} ^www\. [NC] 
RewriteRule^https://domain.com%{REQUEST_URI} [R=301,L,NE] 

# for sub domain 
RewriteCond %{HTTP_HOST} ^(www\.)?subdomain\.domain\.com$ [NC] 
RewriteCond %{HTTPS} on [OR] 
RewriteCond %{HTTP_HOST} ^www\. [NC] 
RewriteRule^http://subdomain.domain.com%{REQUEST_URI} [R=301,L,NE] 
+0

功勞歸於@anubhava –