2013-03-26 26 views
1

我想總是重定向人如何使用mod_rewrite重定向到https連接?

https://www.somedomain.com/URL 

,當他們在非安全端口上。這是因爲我的SSL是用於此網址的。

當有人去http://www.somedomain.com他們會發送到

http://www.www.somedomain.com 

這裏是我努力的htaccess的重寫:

RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://www.%{HTTP_HOST}%{REQUEST_URI} 

編輯:

我正在使用的cPanel服務器,所以製作額外的主機是不行的。

回答

0

請注意,mod_rewrite不是執行該操作的首選方式。使用虛擬主機更簡單。只要把這個配置(來源:apache wiki):

NameVirtualHost *:80 
<VirtualHost *:80> 
    ServerName www.somedomain.com 
    Redirect permanent /secure https://www.somedomain.com 
</VirtualHost> 

<VirtualHost _default_:443> 
    ServerName www.somedomain.com 
    DocumentRoot /usr/local/apache2/htdocs 
    SSLEngine On 
# etc... 
</VirtualHost> 
0

我想總是重定向人https://www.somedomain.com/URL

我想這是所有你需要:

RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule ^(.*) https://www.somedomain.com/$1 [R=301,L,NC]