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

Nginx 新手教程:設置 real_ip_header 指令

Nginx 新手教程:設置 real_ip_header 指令

Nginx 是一款高效能的網頁伺服器,廣泛應用於各種網站和應用程式中。對於新手來說,了解如何正確配置 Nginx 是非常重要的,尤其是在處理來自反向代理或負載均衡器的請求時。本文將介紹如何設置 Nginx 的 real_ip_header 指令,以便正確獲取客戶端的真實 IP 地址。

什麼是 real_ip_header?

在許多情況下,Nginx 可能會作為反向代理運行,這意味著它會接收來自客戶端的請求,然後將這些請求轉發到後端伺服器。當請求經過代理時,客戶端的真實 IP 地址可能會被代理伺服器的 IP 地址所取代。這時,real_ip_header 指令就顯得尤為重要,它能幫助 Nginx 獲取客戶端的真實 IP 地址。

設置 real_ip_header 的步驟

以下是設置 real_ip_header 指令的基本步驟:

1. 確認 Nginx 配置文件位置

首先,您需要找到 Nginx 的配置文件,通常位於 /etc/nginx/nginx.conf/usr/local/nginx/conf/nginx.conf。使用文本編輯器打開該文件。

2. 設置 real_ip_header 指令

在配置文件中,您需要在 http 區塊或 server 區塊中添加以下指令:

http {
    # 設置真實 IP 標頭
    real_ip_header X-Forwarded-For;

    # 設置可信任的代理伺服器
    set_real_ip_from 192.168.1.0/24;  # 這裡替換為您的代理伺服器 IP
    set_real_ip_from 203.0.113.0/24;  # 這裡替換為您的代理伺服器 IP
}

在上面的例子中,X-Forwarded-For 是常用的標頭,用於傳遞客戶端的真實 IP 地址。您需要根據實際情況替換 set_real_ip_from 的 IP 地址,這些地址應該是您信任的代理伺服器的 IP。

3. 測試配置

完成配置後,您可以使用以下命令檢查 Nginx 配置是否正確:

nginx -t

如果配置正確,您將看到類似於 nginx: configuration file /etc/nginx/nginx.conf test is successful 的消息。

4. 重新加載 Nginx

最後,您需要重新加載 Nginx 以使更改生效:

systemctl reload nginx

檢查真實 IP 是否生效

您可以通過查看 Nginx 的訪問日誌來檢查真實 IP 是否已正確設置。訪問日誌通常位於 /var/log/nginx/access.log。使用以下命令查看日誌:

tail -f /var/log/nginx/access.log

如果您看到的 IP 地址是客戶端的真實 IP,那麼配置就成功了。

總結

設置 Nginx 的 real_ip_header 指令是確保您能夠獲取客戶端真實 IP 地址的重要步驟。這不僅有助於提高安全性,還能改善日誌記錄的準確性。對於使用 香港VPS 的用戶來說,正確配置 Nginx 是提升網站性能和安全性的關鍵。若您需要更多有關 香港伺服器 的資訊,請訪問我們的網站。