我們正在運行包含HTTP和HTTP協議的網站。我們需要一個針對.htaccess文件的規則,我們可以處理這些請求,即非https頁面應該使用http://重定向,並且https頁面應該使用https://協議重定向。 我們使用的是Apache。任何幫助將不勝感激。在單個網站上的http和https頁面之間切換
回答
將此添加到您站點根目錄的.htaccess文件中。
RewriteEngine on
# Force http://
RewriteCond %{HTTPS} =on
RewriteCond %{REQUEST_URI} ^(/|/dl/memorandum.*)$ [NC]
RewriteRule^http://%{HTTP_HOST}/ [R=301,L]
# Force SSL
RewriteCond %{HTTPS} !=on
RewriteCond %{REQUEST_URI} ^/contact$ [NC]
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
您可以通過使用|
或操作者匹配在多個頁面。
^/(contact|profile|transactions)$ [NC]
如果網址冗長,你可以刪除$
,做一個前綴匹配的
^/(contact|profile|transactions) [NC]
這將匹配/contact-page
或/contact/page
以及現在。
使用否定在所有不需要SSL的規則上強制使用HTTP。
RewriteEngine on
# Force http://
RewriteCond %{HTTPS} =on
RewriteCond %{REQUEST_URI} !^/(contact|login|cart|register|forgot-your-password|request)$ [NC]
RewriteRule^http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
# Force SSL
RewriteCond %{HTTPS} !=on
RewriteCond %{REQUEST_URI} ^/(contact|login|cart|register|forgot-your-password|request)$ [NC]
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
如何在此行添加多個網址「 RewriteCond%{REQUEST_URI} ^/contact $」 – 2015-02-11 13:49:23
答覆已更新。 – 2015-02-11 13:55:33
似乎有效,但有錯誤。 看到這個鏈接:https://www.netlawman.co.in/dl/memorandum-and-articles-of-association這是非https頁面,但仍然打開與https://應該重定向到http: // – 2015-02-11 14:02:00
- 1. 使用安全會話cookie在HTTP和HTTPS頁面之間切換
- 2. 使用SSL-Ext和Struts 1.2.9在HTTP和HTTPS之間切換
- 3. 在HTTP和HTTPS之間自動切換asp.net
- 4. 正確使用.htaccess在HTTP和HTTPS之間切換
- 5. 爲什麼JavaScript在HTTP和HTTPS之間嵌入切換?
- 6. PHP - 在網站之間切換?
- 7. HTTPS頁面上的HTTP表單
- 8. 如何在http網站的特定頁面上將http請求重寫爲https?
- 9. 針對單個頁面的HTTP到HTTPS
- 10. 在部署在網頁上的java小程序中的面板之間切換
- 11. 在Http或Https之間切換(基於父目錄)
- 12. 在頁面對象api和主要夜間api之間切換
- 13. JSP - 無法維持http頁面和https頁面之間的會話
- 14. 在我的WordPress站點上禁用單個.php頁面的https
- 15. 在面板之間切換
- 16. 在https網站上加載http內容
- 17. 建立一個「單頁」網站與網頁之間的動畫
- 18. 在特定頁面而不是整個網站上應用https
- 19. 在網站上的頁面之間傳輸數據
- 20. htaccess:在單個頁面上強制https://到http://
- 21. 插入HTTP網頁到HTTPS站點
- 22. 面板之間的切換
- 23. 在HTTP和HTTPS之間切換時,JSessionID被覆蓋。怎麼解決?
- 24. 在HTTPS和HTTP之間傳遞數據
- 25. 兩個HTML頁面之間的HTTP cookie
- 26. 從https切換到http
- 27. grafana從http切換到https
- 28. NSURLSessionDownloadTask從http切換到https
- 29. Tomcat和SSL,https上的一個站點和http上的兩個站點
- 30. 設置PageSize,PageNumber和頁面間切換
請提供一些關於重定向規則應該是什麼樣的細節。 Ps:我不是downvoter。 – 2015-02-11 13:37:03
謝謝Ravi,我在我的網站上使用這兩種協議。例如,讓我們分兩頁,不使用ssl的主頁和使用ssl的聯繫頁。所以如果有人試圖使用https://homepage.com訪問主頁,那麼他必須重定向到http://homepage.com。與使用ssl的聯繫人頁面相反的情況。 – 2015-02-11 13:39:29