如何使用Nginx作為反向代理

如何使用Nginx作為反向代理

除了 Apache 之外,Nginx 是最受歡迎的 Web 伺服器。除了作為 Web 伺服器之外,它還可以用作負載平衡器或反向代理。在本教程中,Quantrimang.com將向您展示如何使用 Nginx 作為反向代理。

什麼是反向代理?

代理伺服器充當客戶端和另一個伺服器之間的中介。代理伺服器從您要連接的伺服器檢索資源並將其發送給您查看。反向代理的工作方式相同,只是角色顛倒了。當您向伺服器要求資訊時,反向代理會儲存請求並將其傳送到適當的後端伺服器。這允許系統管理員將伺服器用於多個應用程序,並確保客戶端和伺服器之間的流量更加順暢。

如何使用Nginx作為反向代理

反向代理的好處

根據您的應用程序,您可能有不同的反向代理用例。

  • 反向代理允許您在同一台伺服器上運行多個應用程式- 如果您有多個應用程式在同一台伺服器上運行,它們不能同時「偵聽」連接埠80 或433。使用反向代理,您可以對其進行配置如果需要,將流量重定向到各個應用程式。
  • 負載平衡- 如果您有多個伺服器運行相同的應用程序,則可以使用反向代理將流量均勻分配到每個伺服器。
  • Web 應用程式防火牆- 您可以使用反向代理來隱藏您的應用程序,也可以過濾垃圾郵件 IP 或防止DDOS 攻擊
  • 輕鬆記錄和審核- 由於所有傳入流量均由反向代理管理,因此更容易記錄和監控流量。

配置 Nginx 作為反向代理

要將 Nginx 設定為反向代理,本文將使用Nginx 設定檔中的proxy_pass參數。

注意:本教學假設您對 Nginx 有一定的了解,並且已經在伺服器中安裝和設定了 Nginx。

在大多數用例中,Nginx 將作為前端伺服器,「監聽」連接埠 80 (HTTP) 或 443 (HTTPS) 以接收傳入請求。由於端口 80 或 443 上只能有一個服務“偵聽”,因此您的應用程式必須“偵聽”另一個端口,例如端口 8081。最簡單的配置如下所示:

server {
listen 80;
listen [::]:80;
server_name myapp.com;
location / {
proxy_pass http://localhost:8081/;
}
}

這表示連接埠80上對myapp.com 的所有請求都將被重新導向到連接埠8081。

進階設定

除了 proxy_pass 指令之外您還可以使用其他幾個指令進行更進階的設定。

  • proxy_set_header - 這允許您設定要傳送到後台應用程式的標頭。例如,請參考以下配置:
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

您可以設定必要的代理程式標頭以傳遞給應用程序,告訴它請求IP和遠端位址,然後將正確的內容輸出到請求網站。

  • 代理逾時- 這允許您設定發送和接收代理請求的逾時值。例如:
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
  • proxy_buffers - 這允許 Nginx 暫時保存代理伺服器的回應,並僅在代理伺服器完成回應後將其傳送到請求伺服器。例如:
proxy_buffers 32 4k;

如果您的應用程式發送大量文件,那麼您可能需要停用 proxy_buffers:

proxy_buffering off;

如您所見,Nginx 是一個具有多種用途的反向代理伺服器。它最大的優點是配置簡單、易於使用,並且仍然允許您在更複雜的場景中進行擴充。有關更多詳細信息,您可以查看 Nginx 代理模組文件(位於https://nginx.org/en/docs/http/ngx_http_proxy_module.html)或配置範例(位於https://www .nginx.com/resources/ wiki /開始/主題/範例/完整/)。

希望你成功。


C: 驅動器和 D: 驅動器之間的區別

C: 驅動器和 D: 驅動器之間的區別

在 Windows 電腦上存取檔案總管時,您很可能會找到磁碟機 C: 和 D:。您是否曾想過 D: 驅動器和 C: 驅動器之間的區別以及您應該使用哪一個?

停用 NTFS 檔案壓縮以加快 Windows 電腦的速度

停用 NTFS 檔案壓縮以加快 Windows 電腦的速度

NTFS 檔案壓縮功能是 Windows 作業系統上提供的功能。 Windows 使用者可以使用此功能來壓縮檔案以節省 NTFS 硬碟上的空間。然而,在某些情況下,此功能會降低系統效能並消耗大量系統資源。因此,為了加速 Windows,您應該停用此功能。

如何在 Windows 10 中啟用/停用從 PC 到雲端的同步

如何在 Windows 10 中啟用/停用從 PC 到雲端的同步

從 Windows 10 17083 開始,微軟新增了一個新設置,讓你可以將活動同步到雲端,以實現跨裝置的無縫體驗。

電腦病毒和生物病毒有什麼區別?

電腦病毒和生物病毒有什麼區別?

生物病毒一直是人類的強大威脅。難怪病毒在一個完全不同的世界——程式設計世界中成為了理想的武器模型。

如何在 Windows 10 中停用 iphlpsvc

如何在 Windows 10 中停用 iphlpsvc

Windows 中的 Iphlpsvc 代表 Internet 協定協助服務。停用 iphlpsvc 不會使系統崩潰、破壞其一般功能或極大影響效能。

如何在 Chromebook 上複製和貼上

如何在 Chromebook 上複製和貼上

在本文中,我們將了解在 Chromebook 上複製和貼上文字、文件和資料夾的不同方法。對於高級用戶來說,有許多強大的剪貼簿管理器可以幫助實現最大的生產力。

如何允許/拒絕應用程式存取 Windows 10 中的檔案系統

如何允許/拒絕應用程式存取 Windows 10 中的檔案系統

本指南將向您展示如何變更隱私設定以允許或拒絕所有使用者或僅您在 Windows 10 中的帳戶的應用程式存取檔案系統。

小米3C無線路由器如何設定成中繼器

小米3C無線路由器如何設定成中繼器

如果您在家庭和辦公區域面臨 WiFi 訊號範圍問題,原因是主 WiFi 路由器的範圍較小。您可以使用小米 3C 的中繼模式設定來增加 WiFi 範圍,而無需更改主 WiFi 名稱和密碼。

適用於 Android 的最佳免費 Wi-Fi 查找應用程式

適用於 Android 的最佳免費 Wi-Fi 查找應用程式

以下適合 Android 用戶的最佳免費 Wi-Fi 尋找應用程式將協助您快速找到免費的公共 Wi-Fi 連線點。此外,在行動數據包容量不足或速度過高的情況下,使用此軟體非常有用。

備份 Windows 10 上的開始功能表設置

備份 Windows 10 上的開始功能表設置

Windows 10 上的「開始」功能表是最有用且可自訂的工具之一。您可以將新佈局排列在左側以存取設定和其他位置。在中間您可以快速存取已安裝的應用程式列表,在右側您可以設定動態磁貼以持續顯示更新。