前端ajax提交到php,php却返回了php的源码?

js用ajax,post到php,为什么php那边直接就返回了源码?

前端代码:

$.post("../php/upload/upload_img.php",{
    new_imgURL:'aaaa'
},function(data){
    alert(data)
})

PHP代码:

$img=$_POST["new_imgURL"];
echo $_POST["new_imgURL"];

php返回:
(直接就返回了php的源码)

<?php

$img=$_POST["new_imgURL"];
echo $_POST["new_imgURL"];

php环境是没问题的

阅读 4.1k
7 个回答

那你打开upload_img.php肯定也是显示php源码的
原因是 你的php源码并没有解析,也就是说你的nginx 服务器并没有把你的php文件映射到php的解析模块上去

php文件没有被执行呗,直接返回了文件内容,说明.php文件没有被php执行,CGI配置有问题

php 没有fpm解析到,nginx里面没有配置解析吧

$.post("http://127.0.0.1/php/upload/upload_img.php",{
//coding
},function(data){
//coding
});
新手上路,请多包涵

你的php文件没有被解析,可以查看一下nginx的配置文件server中的index及location中有没有php的解析

新手上路,请多包涵

看了大家的回答, 确实很可能是php解析的问题,可能是你的nginx没有在 server模块中的location模块中写入 fastcgi_pass 127.0.0.1:9000 , 才导致的php文件被当成了普通文件了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题