Nginx

如何為 Django 應用程序編寫 nginx 代理通行證

  • February 7, 2021

我在 AWS 伺服器中部署了一個簡單的 Django 應用程序,並在 Nginx 中創建了一個配置文件,如下所示。

                server {
                        listen 80;
                        server_name 127.0.0.1;
                        location /portal {
                        include proxy_params;
                        proxy_pass http://localhost:8000;
                          }
                       }

但它不起作用並顯示為“404 not found”。

Django 應用程序單獨在 URL 中作為http://public_ip/en/工作,但我需要在http://public_ip/portal中提供此應用程序。

以這種方式配置時,nginx 會將字元串附加到location/portal的末尾proxy_pass,即您的應用程序http://localhost:8000/portal在您 request 時收到 URL http://public_ip/portal

為了/portal請求到達/en,您需要使用:

location /portal {
   include proxy_params;
   proxy_pass http://localhost:8000/en;
}

引用自:https://serverfault.com/questions/1052707