一个很无力的403错误
2023-02-18 16:44:57 时间
老高为了省时省力,在window平台下的开发环境使用了UPUPW,这个环境使得老高可以在5min内搭建出一个完整的(nginx/apache) + PHP + my*开发环境。
但是最近在调试接口的时候,偶尔会有几个接口直接报错403,于是开始了无尽的403折磨之路。
首先看是不是代码抛出的403,结果发现干脆执行不到index.php,断定是nginx的问题。
然后看日志,发现error_log的配置是致命错误才打印日志,果断开成debug模式,然后发现错误信息为:access forbidden by rule
,说明被nignx的某一条配置给挡住了。
根据经验,一般是nginx会使用deny语句否定请求,于是祭出grep大招:
# cd 到nginx的配置目录
grep -rn deny .
结果如下:
λ grep -rn deny . ./advanced_settings.conf:14: deny all; ./advanced_settings.conf:25: deny all; ./advanced_settings.conf:45: deny all; ./advanced_settings.conf:52: deny all; ./vhosts.conf:13: deny all; ./vhosts.conf:43: deny all; ./vhosts.conf:70: deny all;
继续探索发现在advanced_settings.conf
45行有这么一条配置:
#禁止外部通过域名访问以下后缀的敏感文件
location ~* (up.+|\.)(htaccess|conf|uini|log)$ {
deny all;
}
搜嘎,突然回想一下,出错的url好像是log结尾的。。。所以解决办法有两种:
- 改url
- 改配置
继续撸代码去了。。。
相关文章
- 实现vector插入扩容
- 【数据结构】单向循环链表
- 国产优秀java开源博客-Halo
- windows编程入门-学习编程需要什么基础吗
- socket函数发送接收返回值处理
- 孤儿进程和僵尸进程
- 单向循环链表-《数据结构》自学方法指导
- TailwindCSS—一个用于实现快速UI开发的实用工具集CSS框架。
- 局部性原理
- 超详细的正则表达式(上:正则表达式语法)
- fork到底是深拷贝还是浅拷贝
- SpringBoot
- 编译阶段完成的任务
- SpringMVC
- 实现memcpy函数
- 动态代理
- 信号量控制线程顺序
- socket基本连接
- 统计大文件中字符串出现的次数
- 单向循环链表-链表(单链表)的基本操作及C语言实现