原因可能非常多,但对于刚開始学习的人。大部分应该是/etc/nginx/conf.d/default.conf里面的php解析部分配置不正确。

解决的话就是把root定义。在server下加上,这样root的作用域就扩大了。

把location ~ \.php${里面的root删除。fastcgi_param部分改为$document_root$fastcgi_script_name;


好了,来总结一下这类错误的原因吧:

1.可能原因之中的一个:/etc/nginx/conf.d/default.conf的root路径和php解析部分配置不正确。

解决:将root定义放到server下,或者在php解析部分的root定义为全路径。同一时候将fastcgi_param部分改为$document_root$fastcgi_script_name;


2.可能原因之二:请求的文件(比如:xxx.php)文件真的不存在url相应的路径。

解决:找到相关文件,确认路径。


3.可能原因之三:路径没有读权限。

解决:加入用户和权限。


4.题外话,假设没有打开php解析。那么php文件会被当成文件下载且不被解析。