nginx php-fpm 配置问题(2)

问题: Nginx/FPM/PHP all php files say ‘File not found.‘

解决:

可能情况 1:

在 nginx php-fpm 配置问题(1)文中,我们分析了一种可能的原因,在这一篇中,我们
分析另一种可能导致这种问题的情景。

在 nginx.conf 中我配置了 用户和组信息为,(根据自己的机器情况进行配置,这里不考虑安全问题, 我配置为了我平时使用的用户名和用户所在组):

user staff staff;
 1 而在 php-fpm.conf 配置中,我没有配置用户和组信息,里面就有个默认值
 2 ; Unix user/group of processes
 3 ; Note: The user is mandatory. If the group is not set, the default user‘s group
 4 ; will be used.
 5 // 默认配置
 6 user = _www
 7 group = _www
 8 // 改为, 这里要和上面的nginx.conf 中的配置相同
 9 user = staff
10 group = staff

这与我们nginx.conf 中配置的不一样,因为权限问题,所以也会导致php文件不能解析的问题.

可能情况 2:

上面是配置中用户和组的权限问题,出现这种情况的另一种可能是我们要访问的文件或目录没有权限,这里的权限指的是文件读写执行权限, 而且特指在上面nginx.conf和php-fpm.conf中配置的用户和组对这个文件的权限.

因为我们的php文件需要执行,所以一定要有x(执行)权限(包括目录),我这里为了简单,把文件和目录的权限都设置为了读写执行全部,新手没考虑安全问题。

时间: 2024-09-16 10:42:50

nginx php-fpm 配置问题(2)的相关文章

记录一次自己对nginx+fastcgi(fpm)+mysql压力测试结果

nginx + fastcgi(fpm) 压力测试: CentOS release 5.9 16核12G内存 静态页面: 并发1000,压测200秒,测试结果: 系统最大负载5.47 成功响应: 2563065, 502:0, 失败:0 PHP页面(对mysql进行一次带索引的查询,数据库记录500条): 并发1000,压测200秒,测试结果: 系统最大负载15.66 成功响应: 114368, 502:712, 失败:58715 并发200,压测200秒,测试结果: 系统最大负载25.81 成

深入理解PHP之:Nginx 与 FPM 的工作机制

完全转载(算是一个收藏了) https://zhuanlan.zhihu.com/p/20694204 网络上有很多关于如何配置 Nginx + FPM 的文章,但它们更多从操作的角度出发,告诉我们怎么做,但却没有告诉我们为什么要这么做,本文从 Nginx 与 FPM 的工作机制出发,探讨配置背后的原理,让我们真正理解 Nginx 与 PHP 是如何协同工作的. 要说 Nginx 与 PHP 是如何协同工作的,首先得说 CGI (Common Gateway Interface) 和 FastC

[Nginx] - PHP+FPM相关的配置

CodeIgniter的配置: worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; fastcgi_connect_timeout 300s; fastcgi_send_timeout 300s; fastcgi_read_timeout

nginx和fpm的进程数配置和502,504错误

一般来说 php-cgi进程数不够用.php执行时间长(mysql慢).或者是php-cgi进程死掉,都会出现502错误: Nginx 504 Gateway Time-out则是与nginx.conf的设置有关: 1.502 和 php-fpm.conf 1.request_terminate_timeout引起的资源问题 request_terminate_timeout的值如果设置为0或者过长的时间,可能会引起file_get_contents的资源问题. 如果file_get_conte

nginx+php fpm日志报错信息

recv() failed (104:connect  reset by peer) while reading response header from upstream的原因和解决方案 原因是 php-fpm进程数耗尽了,两个方案: (1). 调整php-fpm.conf里面的pm.max_children,增大,不建议超过300(2). php-fpm.conf里面打开每个对应池的slow日志,根据慢执行日志来优化php代码

linux环境下nginx链接不上fpm

背景: nginx是通过源码安装,php环境和php-fpm是通过apt-get自动安装. 以下记录下出现的几个问题及方法 一.访问php文件无法识别 安装nginx和fpm完成之后,通过在nginx的容器中添加一个php的测试页面为test.php,代码只写 <?phpphpinfo();?> 其中通过页面访问方式如图所示 解决办法: 找到nginx的安装路径,找到nginx.conf,每个人的nginx安装目录位置不一样,我的nginx.conf在/usr/local/nginx/conf

nginx同一iP多域名配置方法

nginx绑定多个域名可又把多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,我一般为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里.一.每个域名一个文件的写法       首先打开nginx域名配置文件存放目录:/usr/local/nginx/conf/servers ,如要绑定域名www.itblood.com 则在此目录建一个文件:www.itblood.com.conf然后在此文件中写规则,如: server{ listen 80; server_

nginx配置多个域名

nginx绑定多个域名可又把多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,我一般为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里. 一.每个域名一个文件的写法 首先打开nginx域名配置文件存放目录:/usr/local/nginx/conf/servers ,如要绑定域名www.server110.com 则在此目录建一个文件:www.server110.com.conf 然后在此文件中写规则,如: 12345678 server{listen    

Nginx模块fastcgi_cache的几个注意点 转

Nginx模块fastcgi_cache的几个注意点 去年年底,我对nginx的fastcgi_cache进行摸索使用.在我的测试过程中,发现一些wiki以及网络上没被提到的注意点,这里分享一下. 在web项目中,大家都已经非常熟悉其架构流程了.都说Cache是万金油,哪里不舒服抹哪里.这些流程中,几乎每个环节都会进行cache.从浏览器到webserver,到cgi程序,到DB数据库,会进行浏览器cache,数据cache,SQL查询的cache等等.对于fastcgi这里的cache,很少被

(总结)Nginx 502 Bad Gateway错误触发条件与解决方法

一些运行在Nginx上的网站有时候会出现“502 Bad Gateway”错误,有些时候甚至频繁的出现.以下是从Google搜集整理的一些Nginx 502错误的排查方法,供参考: Nginx 502错误的原因比较多,是因为在代理模式下后端服务器出现问题引起的.这些错误一般都不是nginx本身的问题,一定要从后端找原因!但nginx把这些出错都揽在自己身上了,着实让nginx的推广者备受置疑,毕竟从字眼上理解,bad gateway?不就是bad nginx吗?让不了解的人看到,会直接把责任推在