2011-10-14 29 views
0

我有一個文件夾中當前的htaccess坐在http://www.mydomain.com/dev強制所有頁面爲https htaccess的同時保持當前規則

RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /dev/index.php [L] 

我試圖改變我的最後一行:

RewriteRule ^(.*)$ https://www.mydomain.com/dev/index.php [L] 

然而,沒有工作,該網站拋出了一個ISE。一切都需要通過mydomain.com/dev/index.php來運行。

回答

0

實現此目的的最簡單方法是在端口80上創建一個將所有內容重定向到https的單獨虛擬主機。應該是這個樣子在你的Apache配置:

<VirtualHost *:80> 
    ServerName example.com 

    # Force usage of SSL 
    Redirect/https://example.com/ 
</VirtualHost> 

<VirtualHost 127.0.0.1:443> 
    DocumentRoot /var/www/vhosts/example.com/httpdocs 
    ServerName example.com 
</VirtualHost> 

應該始終重定向到被請求的頁面的SSL等效,同時保持你的所有其他規則不變。如果您無法訪問全局Apache配置(例如在共享主機上),請讓您的主機將上述內容應用於您的虛擬主機條目。

相關問題