ajax 请求php 报错404 但脚本能够正常输出数据 问题的解决方法

1、场景

ajax请求php脚本返回404状态码,但php脚本能够输出数据,导致ajax的的回调函数无法继续执行。

 技术分享

技术分享

排查过程:

1、怀疑是自己写的框架有问题,在浏览器窗口中请求ajax的请求脚本路径,页面能够正常打开。

2、写个php脚本,直接输出一个json格式的字符串,用ajax请求,依旧返回状态码为404.

3、写个html页面用ajax请求,返回状态码为405.

4、排查nginx配置参数,发现fastcgi配置存在问题。


解决方法:

 location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }

更改为

 location ~ \.php$ {
            root           /www;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /www/$fastcgi_script_name;
            include        fastcgi_params;
        }

修改内容:

root       为网站运行根目录。

/scripts  更改为网站根目录。





郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。