You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django Rest Framework部署VPS后如何修改API默认URL为VPS IP或域名

解决方案

1. 调整Django配置文件settings.py

  • 首先修改ALLOWED_HOSTS配置,添加你的VPS公网IP和绑定的域名:
# 示例,替换为你自己的IP和域名
ALLOWED_HOSTS = ['你的VPS公网IP', '你的绑定域名']
  • 如果你使用Nginx/Caddy等反向代理部署Django,需要添加以下配置,让Django识别代理传递的真实访问地址:
# 开启X-Forwarded-Host头识别
USE_X_FORWARDED_HOST = True
# 如果部署了HTTPS,添加以下配置避免协议识别错误
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')

2. 调整反向代理配置(以Nginx为例)

大部分VPS部署Django都会用反向代理转发请求到Django服务,需要在Nginx的站点配置中添加请求头传递规则,确保把用户真实访问的Host信息传递给Django:

location / {
    # 替换为你Django服务运行的内部地址和端口
    proxy_pass http://127.0.0.1:8000;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

3. 重启服务生效

修改完成后重启Django进程(uWSGI/Gunicorn等)和反向代理服务,刷新浏览器重新访问API根路径即可看到URL已经替换为你访问的VPS IP/域名。

从你提供的urls.py来看没有硬编码URL的问题,不需要调整路由配置。

内容的提问来源于stack exchange,提问作者Osama Radwan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 07:36:04