Python 带有反向代理的Django的基本url
我有一个Django项目,它在Dev中工作。对于prod,我使用nginx作为内部用户的反向代理 因此,代码部署在Python 带有反向代理的Django的基本url,python,django,nginx,Python,Django,Nginx,我有一个Django项目,它在Dev中工作。对于prod,我使用nginx作为内部用户的反向代理 因此,代码部署在http://server1.com/project/并且用户可以通过http://project.server2.com/foo/bar 问题在于{%url'%}和{%static'%}标记。两者都会生成相对URL,例如: <link rel="stylesheet" href="/static/css/style.css" > 因此浏览器尝试加载http://p
http://server1.com/project/
并且用户可以通过http://project.server2.com/foo/bar
问题在于{%url'%}
和{%static'%}
标记。两者都会生成相对URL,例如:
<link rel="stylesheet" href="/static/css/style.css" >
因此浏览器尝试加载http://project.server2.com/static/css/style.css
,而不是http://project.server2.com/foo/bar/static/css/style.css
使用自定义基本url生成绝对路径的解决方案是什么?如何为此项目定义媒体根目录和静态根目录?未定义媒体根目录,静态根目录设置为os.path.join(基本目录,“资产”)。我使用collectstatic生成它。但我认为我必须将url和静态标记更改为绝对url。请与您共享nginx配置文件。您需要确保nginx和您的应用程序服务器将
脚本\u名称
传递给Django。