2011-06-01 305 views
2

我到處搜索過,仍然找不到任何答案。https到http重定向

我試圖重定向例如:https://www.domain.comhttp://www.domain.com

目前,我有一個.htaccess文件,其中包括:

 
Options +FollowSymlinks 
RewriteEngine on 
RewriteBase/
RewriteCond %{SERVER_PORT} ^443$ [OR] 
RewriteCond %{HTTPS} =on 
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L] 

但我不斷收到以下錯誤:

 
An error occurred during a connection to www.domain.com. 
SSL received a record that exceeded the maximum permissible length. 
(Error code: ssl_error_rx_record_too_long)... 

我是否需要將任何內容添加到我的虛擬主機*:443的虛擬主機文件?爲domain.com - 道歉,相當新的這一點。任何幫助/方向將不勝感激,謝謝!

+0

可能有很多事情,但爲了幫助您縮小範圍,通常在出現SSL錯誤之前*它甚至會達到htaccess。有關SSL的瀏覽器答案在htaccess指令(我認爲)之前提供。本網站可能會幫助您http://www.errorhelp.com/search/details/69648/ssl_error_rx_record_too_long – ecchymose 2011-06-01 19:02:23

回答

3

您需要完全正常運行https vhost。請在這裏粘貼你的虛擬主機。

<VirtualHost IP:443> 
    ServerName www.domain.com 
    SSLEngine on 
    SSLCertificateFile /etc/ssl/certs/www.domain.com.crt 
    SSLCertificateKeyFile /etc/ssl/private/www.domain.key 

    ReWriteEngine On 
    RewriteRule (.*) http://www.domain.com%{REQUEST_URI} 
</VirtualHost> 

如果您對http和https具有相同的虛擬主機,可能會變得混亂。順便說一句,你的證書必須有CNAME爲www.domain.com或者如果你有通配符*.domain.com。還有一件事,你不需要任何RewriteCond,因爲你重寫了每個https請求。