发现用nginx 的try_files $uri $uri/ /index.php$is_args$args; 这样重写不太安全

查看:882
本文介绍了发现用nginx 的try_files $uri $uri/ /index.php$is_args$args; 这样重写不太安全的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

这是我的项目结构:


用以上方法重写的话:
如果输入www.***.com/app/*.php,这样的话,虽然代码执行不成功,但是就能知道存在这样的文件(可以猜文件了)

当然我知道现在的有些框架(laravel)有种做法是:index.php和前端资源文件放入public文件夹中(网站root配到public下面)

解决方案

最简单的办法是在与try_files同级的地方写一条root限制这个try_files作用位置。

try_files按其后面的参数顺序检查文件是否存在,返回第一个找到的文件,必然会碰到题主这种安全问题,参考主流框架laravel之类的做法写最省事。

这篇关于发现用nginx 的try_files $uri $uri/ /index.php$is_args$args; 这样重写不太安全的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆