Nginx访问PHP文件的File not found错误处理,两种情况

Nginx访问PHP文件的File not found错误处理,两种情况

这个错误很常见,原有有下面两种几种

1. php-fpm找不到SCRIPT_FILENAME里执行的php文件

2. php-fpm不能访问所执行的php,也就是权限问题

第一种情况

可以在你的location php 里面添加当文件不存在时返回404而不是交给php-fpm进行处理

location ~ \.php$
{
...
#文件不存在转404
try_files $uri = 404;
...
}

然后,在你的配置文件中找到下面这段

fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

替换成下面

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

然后重新加载nginx配置文件

systemctl restart nginx

第二种情况

两种解决方法:
第一种,就是把你root文件夹设为其他用户允许
第二种,找到你的php-fpm的配置文件,找到下面这段,把apache替换成你要的用户组

; RPM: apache Choosed to be able to access some dir as httpd
user = apache
; RPM: Keep a group allowed to write in log dir.
group = apache

时间: 2025-01-16 04:37:23

Nginx访问PHP文件的File not found错误处理,两种情况的相关文章

nginx对PHP文件报File not found.错

问题描述 nginx对PHP文件报File not found.错 配置nginx+php5.4的时候,配置完成后,浏览器打开php文件就提示File not found.错误. 解决办法: fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name; 改成如下这句,即可 fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

文件的高级应用及修改的两种方式

文件的高级应用及修改的两种方式 一.文件的高级应用 可读.可写 r+t: 可读.可写 w+t: 可写.可读 a+t: 可追加.可读 # wt with open('36w.txt', 'wt', encoding='utf-8') as fw: print(fw.readable()) print(fw.writable()) False True # w+t with open('36w.txt', 'w+t', encoding='utf-8') as fw: print(fw.readab

关于nginx访问 静态文件 403 的错误

例如 ngixn的配置的静态文件访问 如下: location /static { root /var/app/lxxxx/web; } 1.检查所有的文件有无读权限 chmod 644 -R 2.检查父目录 即 web及以上目录有无可执行权限 chmod 755 xxx/

Nginx反向代理实现会话(session)保持的两种方式 (转)

http://blog.csdn.net/gaoqiao1988/article/details/53390352 一.ip_hash: ip_hash使用源地址哈希算法,将同一客户端的请求总是发往同一个后端服务器,除非该服务器不可用. ip_hash语法: upstream backend {    ip_hash;     server backend1.example.com;     server backend2.example.com;     server backend3.exa

DVWA 黑客攻防实战(四)文件包含 File Inclusion

文件包含(file Inclusion)是一种很常见的攻击方式,主要是通过修改请求中变量从而访问了用户不应该访问的文件.还可以通过这个漏洞加载不属于本网站的文件,比如一个 webshell 从而实现网站控制.下面一起来看看 DVWA 中的文件包含漏洞. 低级 原本也不知道是什么意思,然后尝试点击一下 File1 就显示 File1 的内容了.而且发现 url 变成了 http://192.168.31.166:5678/vulnerabilities/fi/?page=file1.php Hac

2018-3-14 12周3次课 Nginx访问日志、日志分割、日志不记录静态文件和过期时间

12.10 Nginx访问日志 ·日志格式: [[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf 搜索log_format (虽然红框中有三行,但实际上时一行配置,以分号为结尾) combined_realip 定义日志格式名字,此处定义成什么,那么后面引用时就要写成什么 公网ip(出口ip) ·除了在主配置文件nginx.conf里定义日志格式外,还需要在虚拟主机配置文件中增加 access_log /tmp/1.log co

文件读取 FILE

需要了解的概念 [数据流][缓冲区(Buffer)][文件类型][文件存取方式][借助文件指针读写文件] 需要理解的知识点包括:数据流.缓冲区.文件类型.文件存取方式 1.1 数据流: 指程序与数据的交互是以流的形式进行的.进行C语言文件的存取时,都会先进行"打开文件"操作,这个操作就是在打开数据流,而"关闭文件"操作就是关闭数据流 1.2 缓冲区(Buffer): 指在程序执行时,所提供的额外内存,可用来暂时存放做准备执行的数据.它的设置是为了提高存取效率,因为内

为什么NTFS删除超过4G大文件或数据库文件后FILE RECORD大小表现为0

为什么NTFS删除超过4G大文件或数据库文件后FILE RECORD大小表现为0? 答:NTFS删除一个文件,必须要完成如下几个流程,才算完结: 1.更改文件系统$bitmap,释放空间 2.更改$mft filerecord项的属性为删除 3.更改$mft:$bitmap的位图信息为0,释放这个filerecord的占用空间 4.清除目录链表中关于本文件的item信息. 这个流程是理想状态下的处理规则,但实际上,最头疼的是OS要考虑这个问题:如果在上述4个步骤中出现中断(如突然断电.死机等),

nginx封锁恶意IP,并且定时取消的两种脚本

前言:有时候服务器会遭受到恶意IP访问,导致服务器负载很大,这个时候需要把这个IP封锁掉,以下两种脚本即可实现这种功能.封锁IP有两种方式:1,直接通过nginx即可,在配置文件中加入include blockip.conf:2,通过防火墙,加入防火墙规则,使固定的IP不能访问. 两种方式都是在日志文件中检索出访问量异常的IP,并作处理. 这里的脚本功能实现的是,当某个IP访问服务器大于我们设定的一个值后,封锁此IP,当然这个功能在实际中需要对百度.谷歌等爬出识别出来,这个脚本不处理,只要大于我