這篇文章的內容主要圍繞Nginx如何將HTTP重定向到HTTPS進行講述,文章內容清晰易懂,條理清晰,非常適合新手學習,值得大家去閱讀。感興趣的朋友可以跟隨小編一起閱讀吧。希望大家通過這篇文章有所收獲!
Nginx是一個強大的重定向工具,可以輕松配置在您的系統上重定向不安全或未加密的HTTP網絡流量到加密和安全的HTTPS網絡服務器。
Nginx,發音為“Engine x”,是一個免費、開源、基于Linux的高性能Web和反向代理服務器,負責管理和處理互聯網上最大的網站流量的負載。Nginx是一個強大的重定向工具,可以輕松配置在您的系統上重定向不安全或未加密的HTTP網絡流量到加密和安全的HTTPS網絡服務器。如果你是一個系統管理員或開發人員,那么你應該經常使用Nginx服務器。
在這篇文章中,我們將研究如何在Nginx中將Web流量從HTTP重定向到安全的HTTPS。HTTP消息頭,以明文的字符串格式傳送,而HTTPS使用SSL/TLS對客戶機和服務器系統之間的通信進行加密。因此,由于許多原因,HTTPS應該替代HTTP:
1.客戶端-服務器之間雙向的所有數據均已加密。但是,如果被攔截,任何人都無法訪問敏感信息。
2.當您使用HTTPS時,Google Chrome和其他瀏覽器會認為您的網站域是安全的。
3.HTTPS版本使用HTTP/2協議改善了您指定的網站性能。
4.如果您通過HTTPS為您的網站域提供服務,則該網站將在Google上排名更高,因為它偏愛所有受HTTPS保護的網站。
5.對于每個站點版本,最好在單獨的服務器塊中將Nginx中的流量HTTP重定向到HTTPS。還建議避免使用“ if”方向重定向流量,這可能會導致服務器異常行為。
將所有流量從HTTP重定向到HTTPS
將以下更改添加到Nginx配置文件中,以便將所有流量從HTTP重定向到HTTPS版本:
server {
listen 80 default_server;
server_name _;
return 301 https://$host$request_uri;
}下面,我們詳細說明每個上述術語:
Listen 80 default_server – 這將指示您的系統捕獲端口80上的所有HTTP通信
Server_name _ – 在接到請求后的匹配順序
Return 301 https://$host$request_uri – 這告訴您的搜索引擎將其永久重定向。它指定變量$host 保存域名。
更改配置設置后,需要在系統上重新加載Nginx服務。因此,使用以下命令重新加載Nginx服務:
$ sudo systemctl reload nginx
在Nginx中將指定域名的HTTP重定向到HTTPS
在您的域上安裝SSL證書之后,您將有兩個用于此域名的服務器塊選項。一個塊用于監聽端口80的HTTP版本,第二個版本用于監聽端口443的HTTPS。然而,要將一個網站域名從HTTP重定向到HTTPS,你需要打開Nginx配置。您可以在/etc/nginx/sites-available目錄中找到這個配置文件。如果你沒有找到這個文件,你可以搜索它/etc/nginx/nginx./usr/local/nginx/conf或/usr/local/etc/nginx,然后在這個文件中執行以下更改:
server {
listen 80;
server_name linuxmi.com www.linuxmi.com;
return 301 https://linuxmi.com$request_uri;
}讓我們逐行了解上面的代碼。
Listen 80 – 使用端口80,服務器將偵聽指定域名的所有傳入連接。
Server_name linuxmi.com www.linuxmi.com – 它指定域名。因此,將其替換為您要重定向的網站域名。
Return 301 https://linuxmi.com$request_uri – 將流量移至該站點的HTTPS版本。
$request_uri變量用于完整的原始請求URI,其中也包含參數。
使用以下方法,您可以將流量重定向到HTTPS www版本到站點的非www版本。對于非www和www版本,建議在單獨的服務器塊中創建重定向。讓我們用一個例子來解釋。如果要將www HTTPS請求重定向到非www版本,則應遵循以下配置:
server {
listen 80;
server_name linuxmi.com www.linuxmi.com;
return 301 https://linuxmi.com$request_uri;
}
server {
listen 443 ssl http2;
server_name www.linuxmi.com;
# . . . other code
return 301 https://linuxmi.com$request_uri;
}
server {
listen 443 ssl http2;
server_name linuxmi.com;
# . . . other code
}用您的域名替換域名,例如www.linuxmi.com。
通過改變Nginx配置文件設置,您可以輕松地將指定域名或全部重定向到HTTPS。我們在文中提到的這種方法,可以通過改變用戶體驗,使您的網站更安全。
感謝你的閱讀,相信你對“Nginx如何將HTTP重定向到HTTPS”這一問題有一定的了解,快去動手實踐吧,如果想了解更多相關知識點,可以關注億速云網站!小編會繼續為大家帶來更好的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。