如何使用 nginx 反向代理设置 Django

Ben*_*enJ 4 django nginx

我有一个 Django 项目,已在 127.0.0.1:8888 的开发服务器上启动并运行。我正在尝试让它在我的 vps 上运行 nginx,这样我就可以在 example.com/djangoApp 上看到它。

这是我的 nginx.conf:

server {
    server_name example.com;
            location /otherLocation/ {
                    proxy_pass http://127.0.0.1:10000;
            }

            location /djangoApp/ {
                     proxy_pass http://127.0.0.1:8888;
            }
Run Code Online (Sandbox Code Playgroud)

当我导航到 example.com/djangoApp 时,它会抛出一个错误:“使用 djangoApp.urls 中定义的 URLconf,Django 按以下顺序尝试了这些 URL 模式: /admin 当前路径 djangoApp/ 与以下任何内容都不匹配这些。”

我可以修改 settings.py 中的根 url 来缓解这种情况吗?

Ben*_*enJ 6

我通过添加到 nginx.conf 修复了这个问题:

location /djangoApp {
    rewrite  ^/djangoApp/(.*) /$1 break;
    proxy_pass http://127.0.0.1:8888;
}
Run Code Online (Sandbox Code Playgroud)

感谢这次SO交流