[英]Using HTTPS instead of HTTP
我有一個用戶必須登錄的網站。 我想使用HTTPS,因此請與服務器建立安全的加密連接,以檢查用戶名和密碼。
目前在我的服務器上我有一個名為httpdocs的文件夾,這是我的網站存儲的地方,我還有一個名為httpsdocs的文件夾。
現在我說我的網站存儲在httpdocs中,所以邏輯上我會去http://website.com
但我發現,如果我去https://website.com,我可以安全地連接到存儲在httpdocs中的頁面。
無論如何,我的問題是,每當我去另一個鏈接我松開安全連接(URL返回到http://)那么我如何保持所有安全? 我是否必須在href中使用完整的URL,因為這似乎有點蹩腳而不是僅僅使用href = page2.php。
我是這個網站開發領域的新成員,但如果能幫助你,我在開發方面經驗豐富。
非常感謝幫助。
如果有人知道什么好的話,一些基本的教程或閱讀材料會很棒嗎?
再次感謝。
不要在網址中使用http://foo.com/path
,而是使用//foo.com/path
(或者,更好的是,如果你停留在同一台服務器上,請使用/path
- 它確實有效)。 做完整的網址會帶來冗余和脆弱。 躲開它。
要在評論中回答您的問題,您應該使用mod_rewrite(假設已啟用):
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.yourdomain.com/$1 [R,L]
將任何網頁發送到https。
查看HTTP嚴格傳輸安全(HSTS) : https : //www.owasp.org/index.php/HTTP_Strict_Transport_Security
基本上,您可以通過將此標頭添加到安全站點的配置來強制瀏覽器( 除非IE <12 )始終使用HTTPS:
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains"
這也可以與用於非安全/ HTTP站點配置的301(PERMANENT)重定向相結合,也在上面引用的站點上進行了概述 。
另外/或者,您可以在“website.com”頁面上設置基本href ,方法是在<head>
標記的頂部添加這樣的內容:
<base href="https://website.com/">
這將設置頁面上的所有相對URL(包括鏈接,樣式表,腳本,圖像等),以使用HTTPS站點的根作為基礎。 但是,根據站點的結構和大小,您需要驗證每個頁面的基本href和/或頁面中的URL是否包含任何必要的路徑信息(即子目錄)。 否則, http ://website.com/some/directory/page.html上指向“otherpage.html”的鏈接將指向http://website.com/otherpage.html而不是http://website.com /some/directory/otherpage.html 。 在這種情況下,您可能需要“ http://website.com/some/directory/ ”的基本href或鏈接中的相對URL應指向“/some/directory/page.html”或“some / directory / page.html“(在這種情況下不需要斜線)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.