服务器设置和教程 · 8 10 月, 2024

Nginx 新手教程:設置 add_header 指令

Nginx 新手教程:設置 add_header 指令

Nginx 是一款高效能的網頁伺服器,廣泛應用於各種網站和應用程式中。作為一名新手,了解如何使用 Nginx 的各種指令是非常重要的,其中 add_header 指令是一個常用的功能,能夠幫助我們在 HTTP 響應中添加自定義的標頭。本文將詳細介紹 add_header 指令的用法及其應用場景。

什麼是 add_header 指令?

add_header 指令用於在 Nginx 的 HTTP 響應中添加自定義的標頭。這些標頭可以用來傳遞額外的信息,增強安全性,或是改善用戶體驗。使用 add_header 指令,我們可以設置多種標頭,例如 CORS、內容安全政策(CSP)、緩存控制等。

基本語法

使用 add_header 指令的基本語法如下:

add_header   [always];
  • name:要添加的標頭名稱。
  • value:標頭的值。
  • always:可選參數,表示即使在響應狀態碼為 4xx 或 5xx 時也添加該標頭。

示例:設置 CORS 標頭

跨來源資源共享(CORS)是一種機制,允許網頁從不同的域請求資源。以下是一個設置 CORS 標頭的示例:

server {
    listen 80;
    server_name example.com;

    location / {
        add_header 'Access-Control-Allow-Origin' '*';
        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
        add_header 'Access-Control-Allow-Headers' 'Content-Type';
    }
}

在這個示例中,我們允許所有來源的請求,並指定了允許的 HTTP 方法和標頭。

示例:設置內容安全政策(CSP)

內容安全政策(CSP)是一種安全功能,可以防止 XSS 攻擊。以下是一個設置 CSP 標頭的示例:

server {
    listen 80;
    server_name example.com;

    location / {
        add_header 'Content-Security-Policy' "default-src 'self'; img-src *; script-src 'self' https://trustedscripts.example.com;";
    }
}

這個示例中,我們限制了資源的來源,僅允許來自自身和特定域的腳本。

注意事項

  • 在使用 add_header 指令時,請確保標頭名稱和值的正確性,以免影響網站的正常運行。
  • 如果需要在所有響應中添加標頭,可以將 add_header 指令放在 httpserver 區塊中。
  • 使用 always 參數時,請注意可能會影響到錯誤響應的處理。

總結

通過本文的介紹,相信您對 Nginx 的 add_header 指令有了更深入的了解。這個指令不僅能夠幫助您增強網站的安全性,還能改善用戶體驗。無論是設置 CORS 還是內容安全政策,add_header 都是您不可或缺的工具。如果您正在尋找高效能的 香港 VPS 解決方案,Server.HK 提供多種選擇,滿足您的需求。