记一次安装php-fpm后报错File not found的解决方法
过程
今天在配置新服务器时发现一个很奇怪的错误。安装php时,直接运行apt install php-fpm
再在nginx配置文件中加入php8.3-fpm.sock的链接,竟然一直告诉我“File not found.”。装了多久服务器,愣是第一次遇到这种错误。重装php-fpm,换源再装什么的都试了个遍都没用。用systemctl status php8.3-fpm.service
查看运行状态也一点问题没有。
找了一圈,都给我说是php没装好。没办法,只能自己摸索了。
到/run/php
目录下面,突然注意到一点:用户。
php8.3-fpm.sock
的拥有者www-data
一般被用来管理网站内容。但在这里就不同了。我前两天安装nginx改根目录时也遇到同样奇怪的问题。明明位置是对的,目录权限也设成了777,但就是报错404 Not Found。在我跟上一台服务器的nginx配置对比时,我发现只要在nginx.conf
内把user
一项改掉就好了,随便改成默认账户还是root都行。这里我想可能遇到了同样的问题。于是我找到配置用户的位置(在/etc/php/8.3/fpm/pool.d/www.conf
),同样把用户改为默认用户,再次重启服务,成功打印出phpinfo。
结论/解决方案
到php的配置文件www.conf
(我的是在/etc/php/8.3/fpm/pool.d/www.conf
)将所有的www-data
用户改为你的默认账户(除了root账户)即可。
我这里把user
、group
、listen.owner
、listen.group
都改为了ubuntu
。
我在配置nginx时也有类似问题,将/etc/nginx/nginx.conf
中第一行的user
选项修改掉即可。
暂时不明白原因。总之记录一下,以免以后又碰到了再懵圈。
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »