我已经在 AWS 服务器中部署了一个简单的 Django 应用程序,并在 Nginx 中创建了一个配置文件,如下所示。
server {
listen 80;
server_name 127.0.0.1;
location /portal {
include proxy_params;
proxy_pass http://localhost:8000;
}
}
但它不起作用并显示“404 未找到”。
Django 应用程序单独在 URL 中工作http://public_ip/en/但我需要提供这个应用程序http://public_ip/门户。
答案1
当这样配置时,nginx 会将字符串附加到位置/portal
的末尾proxy_pass
,也就是说,http://localhost:8000/portal
当您请求时,您的应用程序会收到 URL http://public_ip/portal
。
为了使/portal
请求到达/en
,您需要使用:
location /portal {
include proxy_params;
proxy_pass http://localhost:8000/en;
}