繁体   English   中英

nginx 服务器有时会返回 404 Not Found for valid a URL

[英]nginx server sometime returns 404 Not Found for valid a URL

我正在使用带有 PHP-FPM 的 nginx 服务器进行 Web 开发。 在从浏览器向服务器发送连续的 AJAX 调用时,我有时会收到 404 Not Found 错误,用于有效 URL。 (当我在新的浏览器选项卡中打开 URL 时,它可以正确显示页面。)

我无法调试为什么 nginx 会这样。 不知道是不是掉线了。 我该怎么办?

我正在使用 nginx 的默认安装并且没有对其进行任何更改。

这是我的 nginx.conf

服务器 {

    listen                                  IP address with PORT ssl;
    server_name                             SERVER Name;

    root                                    /u01/projectfolder;

    ssl                             on;
    ssl_certificate                 /etc/nginx/ssl/36287365.net.cert;
    ssl_certificate_key             /etc/nginx/ssl/36287365.net.key;



    index                                   index.php index.html;
    log_not_found                           off;
    charset                                 utf-8;

   location /rainbow {
            try_files $uri $uri/ /rainbow/index.php$is_args$args;
    }

    location ~ \.php$ {
            try_files $uri =404;
            fastcgi_pass   127.0.0.1:9101;
            fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include         fastcgi_params;
    }

}

我还在 php 端 index.php 添加了日志,但是对于 404 请求日志没有生成。 我猜这个请求没有到达 php 方式 fastcgi 和 nginx。

请帮忙

如果您有多个服务器侦听同一个端口,则可能会发生这种情况,请确保只有一个 PHP 服务器侦听 9101。

我在两个不同的 Node.js 服务器同时运行时遇到过这种情况,侦听相同的端口 - 大约 50% 的请求返回 HTTP 错误 404,而其余请求正常 200。

你可以通过直接在机器上使用 CURL 生成相同的请求来验证它不是 Nginx 的错误,绕过 Nginx。 如果这仍然发生,那不是他们的错。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM