Nginx+PHP php文件404错误的一个可能原因

前情提要

网站本来是nginx + php-fpm socket的方式跑的,nginx是自己编译安装了。昨天尝试把网站加上https,就根据https://certbot.eff.org/里的指令进行操作。

操作过程中没有仔细查看每一步的提示,结果导致重新装了一个nginx,装好之后我把server配置移到新的nginx配置目录里,结果就出现了静态文件可以访问,php文件死活报404的问题。

原因

最终发现是因为新装的nginx是以用户www-data运行的,而php-fpm配置的用户是www,所以php-fpmsocket所有者是www用户。

这时候本该报502错误的,页面却是404。最后发现是因为没有修改nginx默认的error_page指令:

# redirect server error pages to the static page /50x.html
#   
error_page   500 502 503 504  /50x.html;
location = /50x.html {
    root   html;
}

由于不存在50x.html文件,所以页面显示的404错误的页面。

解决

过程是曲折的,结果是美好的

  1. 修改50x错误页面的正确root地址
  2. 修改nginx的运行用户为www,重启nginx

All is well.

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏黑泽君的专栏

Struts2的下载和安装

  使用Struts2框架,进行Web开发,或者运行Struts2的程序,必须,先下载并安装好Struts2    从Struts2的官网中进行下载  htt...

19220
来自专栏电脑高手

如何通过路由器来控制上网

这种共享上网的方法一般如下:(光纤)电话线--语音分离器--(光纤猫)ADSL猫--宽带路由器-交换机-集线器-电脑

472130
来自专栏从零开始学 Web 前端

从零开始学 Web 之 Ajax(一)服务器相关概念

服务器和客户端都是电脑,在硬件层面上没有明显的划分,配置很差的个人电脑任然可以作为服务器。

15920
来自专栏Java成神之路

Linux_总结_01_VMware14虚拟机下安装CentOS7.x

1.5K20
来自专栏python读书笔记

python 数据分析基础 day7-xlrd,xlwt读写多个excel通过xlrd和xlwt读多个excel文件并写入一个新excel文件

今天总结的内容为通过xlrd和xlwt模块将读取的多个excel文件中多个工作表输出至多个excel文件中。 通过xlrd和xlwt读多个excel文件并写入一...

43580
来自专栏WindCoder

Git命令小记

[git] warning: LF will be replaced by CRLF | fatal: CRLF would be replaced by LF

8610
来自专栏杨龙飞前端

webpack2的一些使用入门

20240
来自专栏Django Scrapy

linux 便捷使用防火墙控制端口访问

使用 ufw 工具 ubuntu 安装 apt-get install ufw 使用方法 1 启用 sudo ufw enable sudo ufw de...

46740
来自专栏瓜大三哥

HLS Lesson9-c/c++ testbench书写

目的: l验证C函数的正确性 l提高效率 1.main()函数返回0则表明结果是正确的,如果是非0则表明结果是不正确的。 2.输入激励(stimulus) 输入...

302100
来自专栏一枝花算不算浪漫

[常见问题]在Linux下执行Redis命令不起作用.

37180

扫码关注云+社区

领取腾讯云代金券