gpt4 book ai didi

django - 使用 Nginx 和 fastcgi 部署的 Django 为空 'current url'

转载 作者:行者123 更新时间:2023-12-02 06:04:50 25 4
gpt4 key购买 nike

当我查询这个网址时

http://mywebsite.com/foos/ 

Django 给我:

Page not found (404)
Request Method: GET
Request URL: http://mywebsite.com/foos//
The current URL, , didn't match any of these.

错误:
- 在请求 URL 末尾添加“/”,
- 当前 URL 为空。

我的规范:
我使用 nginx 作为 fast_cgi 的反向代理来运行 django 网站。

这是我的 nginx 网站配置:

server {
listen 80;
server_name mywebsite.com;


location / {
fastcgi_pass unix:/tmp/_var_wwwdjango_mywebsite.socket;
include /etc/nginx/fastcgi_params;
}
}

这是我的 fastcgi_params 文件:

fastcgi_param   QUERY_STRING            $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;

fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;

#fastcgi_param HTTPS $server_https;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;

备注:

  • 如果我将 url(r'^$', 'myapp.views.index') 添加到我的模式中,它会呈现我所有请求的 View ......所以很明显nginx conf 或 fast_cgi 问题。

  • 当我使用 django 开发服务器执行我的网站时,我的 url 没问题。

最佳答案

您缺少 PATH_INFO 参数。

fastcgi_param PATH_INFO $fastcgi_script_name;

请参阅 nginx 文档:http://wiki.nginx.org/DjangoFastCGI

如果您在您最喜欢的搜索引擎中尝试“nginx PATH_INFO django”,看起来有些用户还必须删除 SCRIPT_NAME 参数才能使其正常工作。

关于django - 使用 Nginx 和 fastcgi 部署的 Django 为空 'current url',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9298335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com