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