django - 如何使用 nginx 反向代理设置 Django
问题描述
我有一个 Django 项目,我在 127.0.0.1:8888 的开发服务器上启动并运行。我试图让它在我的带有 nginx 的 vps 上运行,所以我可以在 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;
}
当我导航到 example.com/djangoApp 时,它会抛出一个错误:“使用 djangoApp.urls 中定义的 URLconf,Django 按以下顺序尝试了这些 URL 模式:/admin 当前路径 djangoApp/ 与任何一个都不匹配这些。”
我可以修改 settings.py 中的根 url 来缓解这种情况吗?
解决方案
我通过添加到 nginx.conf 来解决这个问题:
location /djangoApp {
rewrite ^/djangoApp/(.*) /$1 break;
proxy_pass http://127.0.0.1:8888;
}
感谢这个 SO 交换。
推荐阅读
- javascript - 如何通过向文本框提供输入来替换文本区域中的 JSON 文本值
- opencv - 使用 Android NDK 对 'cv::imwrite 的未定义引用
- android - Android:处理在viewpager内的片段中加载数据
- javascript - 使用vuejs在下拉列表中选择项目后如何显示表单
- mediawiki - 当 Mediawiki 页面包含预先格式化的文本时,Mpdf 不打印,没有给出任何错误
- android - 在 Web 应用程序(角度)中打开设备相机
- excel - 从excel单元格中选择特定字符后的特定数字计数
- firebase - 我可以使用新的分析属性(网络 + 应用程序)来可视化谷歌数据工作室中的报告吗?
- jquery - onClick 将 Class 添加到最多 3 个元素并禁用单击其余元素
- java - 具有多个条件的Java三元运算符