2013-04-20 87 views
3

我正在修改.htacess。我試着用下面的代碼將https://mydomain.com更改爲https://www.mydomain.com。哪個失敗了。如何將https://重定向到https:// www .htacess文件?

# REDIRECT HTTPS:// TO HTTPS://WWW. 
RewriteCond %{HTTPS} on 
RewriteCond %{HTTP_HOST} ^my___domain\.com$ [NC] 
RewriteRule ^(.*)$ http://www.my___domain.com/$1 [R=301,L] 

我在做什麼錯?


作爲一個說明:

如果這會有所幫助,重定向IP和原3_ $(_ 「> HTTP://my3_$.com)到_」> HTTP:// www.3 __ $。com我在開始時使用了這些代碼。

# REDIRECT IP TO WWW. 
RewriteCond %{HTTP_HOST} ^xxx\.xxx\.xxx\.xxx 
RewriteRule (.*) http://www.my___domain.com/$1 [R=301,L] 

# REDIRECT HTTP:// TO HTTP://WWW. 
RewriteCond %{HTTP_HOST} ^my___domain\.com$ [NC] 
RewriteRule ^(.*)$ http://www.my___domain.com/$1 [R=301,L] 

我試圖重定向https://開頭,因爲修改上述兩個成功後,我無法登錄,因爲這些是https://開頭的網頁。

謝謝

回答

1

相反的http://www.___.com/$1,使用//www.___.com/$1。它將使用http或https,以原始請求中使用的爲準。目前,你正在強制http,這似乎與你想要的相反。

+0

因此,如果我使用//www.___.com/$1它會自動選擇正確的(http或https)使用? – ccharms 2013-04-20 06:33:25

+0

是的。酷小動作,不是嗎?我最近才瞭解到這一點,儘管我一直在做各種網絡編程和系統管理工作多年。 301重定向位置標頭可能被認爲是完整的絕對URI,但我相信Apache會發現它,如果沒有,Web瀏覽器肯定會。有些垃圾郵件可能不會,但沒有問題。 – Zenexer 2013-04-20 06:34:41

+0

我試圖使用它,它不起作用。 Opencart會在我使用它時拒絕它。有一種更簡單的手動方式嗎? – ccharms 2013-04-20 06:48:18

0

我用這個重寫從http重定向到https

RewriteCond %{SERVER_PORT} ^80$ 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

我在你的情況下,加入這樣的事情會做的工作猜測:

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

嗯?

相關問題