记一次laravel 404 file not found 填坑之旅

今天在把项目部署到新的服务器上时,遇到了 laravel 404  的问题。 服务器LNMP 环境是同事搭的,这种问题也是第一次遇到,

查看虚拟主机的nginx 

 

记一次laravel 404 file not found 填坑之旅_第1张图片

 

发现瓦力部署 laravel 项目的时候,忘记将 vendor 目录上传到项目里, 上传以后 ,发现还是404。 

查看 /var/log/nginx/error.log 

 

记一次laravel 404 file not found 填坑之旅_第2张图片

 发现报错都是 

FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, 

遂Google之、

其中找到下面这段

 

记一次laravel 404 file not found 填坑之旅_第3张图片

大概的意思是  php 进程运行用户导致的 

`ps aux | grep php`  查看

记一次laravel 404 file not found 填坑之旅_第4张图片

发现是 apache 用户, 打开/etc/php-fpm.d/www.conf

将  user 和 group 改为www

user = www
group = www

问题解决

还有一个坑就是 nginx 进程的运行用户,与代码目所有者 或者权限不一致,会导致403 错误

下面是参考的链接 Nginx 1 FastCGI sent in stderr: “Primary script unknown”

从上面看解决一个问题最高效的一个方法就是 快速找到报错的原因,否则没法定位问题

你可能感兴趣的:(laravel,laravel,404,php)