要在 nginx 中開啟 hsts(http strict transport security),您需要在 nginx 的配置文件中為特定域名或服務器塊添加 add_header 指令,以設置 strict-transport-security 響應頭。以下是如何在 nginx 中配置 hsts 的基本步驟:
打開 nginx 的配置文件。通常,主配置文件位於 /etc/nginx/nginx.conf,但實際的伺服器塊配置可能位於 /etc/nginx/sites-available/ 或其他類似的目錄中。
找到您要啟用 hsts 的伺服器塊(server block)。這通常是一個包含 server 指令的代碼塊,其中定義了域名的監聽埠和相關的配置。
在該伺服器塊內添加 add_header 指令來設置 strict-transport-security 響應頭。您可以指定一個 max-age 值,它決定了瀏覽器應該記住只使用 https 訪問該域名的時間長度(以秒為單位)。通常,這個值會設置得相對較長,比如一年(31536000 秒)。
以下是一個簡單的示例:
nginx
server {
listen 443 ssl;
server_name example.com;
# ssl 配置。
# 添加 hsts 響應頭。
add_header strict-transport-security "max-age=31536000;includesubdomains";
# 其他配置
location / {
#
}
}
在這個例子中,max-age=31536000 意味著瀏覽器將記住只通過 https 訪問 example.com 域名一年。includesubdomains 是一個可選參數,它指示瀏覽器也應該將 hsts 策略應用於該域名的所有子域名。
保存配置文件並重新加載或重啟 nginx,以使更改生效。您可以使用以下命令之一來重新加載 nginx 配置:
bash
sudo nginx -s reload
# 或者
sudo systemctl reload nginx
請注意,為了使 hsts 正常工作,您必須確保網站已經通過有效的 ssl 證書配置了 https,並且所有的請求都通過 https 進行處理。
此外,由於 hsts 的安全性質,一旦配置錯誤,可能導致用戶無法再通過 http 訪問您的網站。因此,在啟用 hsts 之前,請確保您已經充分測試了 https 配置,並確信它可以正常工作。如果您需要在未來禁用 hsts,您必須等待 max-age 指定的時間過去,或者通過其他方式(如清除用戶的瀏覽器緩存)來手動重置瀏覽器的 hsts 狀態。
- 遊戲問答
- 答案列表
nginx 怎麼開啟HSTS[朗讀]
加入收藏