我正在通过位置/应用程序上的nginx运行Django umap项目。 这就是为什么我更改了所有网址格式,在 urls.py 文件中添加了^ app /作为前缀。
这些积极更改的网址可以按预期工作。不幸的是,一些URL模式似乎是动态添加的,例如我需要使用的语言代码URL。
以下是我遇到的错误:
Using the URLconf defined in umap.urls, Django tried these URL patterns, in this order:
^app/admin/
^login/(?P<backend>[^/]+)/$ [name='begin']
^complete/(?P<backend>[^/]+)/$ [name='complete']
^disconnect/(?P<backend>[^/]+)/$ [name='disconnect']
^disconnect/(?P<backend>[^/]+)/(?P<association_id>[^/]+)/$ [name='disconnect_individual']
^app/m/(?P<pk>\d+)/$ [name='umap_short_url']
^app/ajax-proxy/$ [name='ajax-proxy']
^en/
^uploads\/(?P<path>.*)$
^static\/(?P<path>.*)$
The current URL, app/en/map/vas_6, didn't match any of these.
如您所见,^ en / URL_pattern没有所需的前缀。
添加此URL_pattern时,我找不到位置。有没有办法只为所有的URL_patterns添加前缀?
**编辑
这是nginx conf文件:
server {
listen 80;
server_name domain.org;
location / {
root /opt/my-nodejs-project/;
proxy_pass http://127.0.0.1:3000;
proxy_redirect default;
}
location /app/ {
root /opt/my-django-project/umap/;
proxy_pass http://127.0.0.1:8000;
proxy_redirect default;
}
location /static/ {
alias /opt/my-django-project/umap/;
proxy_pass http://127.0.0.1:8000;
proxy_redirect default;
}
}