在近期一次上线web应用部署过程中,相同的配置在测试环境中并没有出现任何问题。部署在生产环境3台服务器上时,一直出现“file not found”,查看nginx服务器的error日志出现了如下错误:
020/07/05 16:32:05 [error] 28033#0: *3 FastCGI sent in stderr: “Primary script unknown” while reading response header from upstream, client: 192.0.61.175, server: baogebiji.com, request: “POST /www/getClientInfoList.php HTTP/1.1″, upstream: “fastcgi://unix:/dev/shm/php-cgi.sock:”, host: “192.0.61.176“, referrer: “http://192.0.61.176/www“
生产环境的部署脚本及配置文件均一摸一样,出现这样的问题感觉到很恐慌。
一、测试php是否可以正常运行。
在网站根目录下,部署test.php文件,访问192.0.61.176
将test.php脚本,复制到www目录,访问网址192.0.61.176/www/test.php
检查nginx.conf配置文件,与测试文件完全相同。网站根目录下打开php文件正常。因此php-fpm应该运行也是正常的。
二、检查网站运行权限。
1,检查nginx.conf文件,nginx运行的用户为app100。
2,检查网站目录,均为app100。
原创文章,作者:运维侠,如若转载,请注明出处:https://www.yunweixia.com/solutions/php-execution-permissions-causing-fastcgi-primary-script-unknown-error.html