apache,nginx上传目录无执行权限的设置方法

softyun3年前服务器49

我们来看俩段通常对上传目录设置无权限的列子,配置如下:

复制代码 代码如下:


<Directory "/var/www/upload">
<FilesMatch ".php">
Order Allow,Deny
Deny from all
</FilesMatch>
</Directory>



还有网上那个对nginx上传目录无执行权限

复制代码 代码如下:


location ~ ^/upload/.*\.(php|php5)$
{
deny all;
}



这些配置表面上看起来是没什么问题的,确实在windows下可以这么说。
但是*nux就不同了,大家都是知道的*nux操作系统是区分大小写的,这里如果换成大写后缀名*.phP一类就bypasss了


这里我说下我个人的解决方法:

复制代码 代码如下:


<Directory "/var/www/upload">
<FilesMatch "(?i:.php)"> //?是尽可能多的匹配.php的字符串,i是不区分大小写,然后冒号后面跟上正则表达式
Order Allow,Deny
Deny from all
</FilesMatch>
</Directory>



上面的意思就是说,/var/www/upload目录下所有php文件不区分大小写,通过order,allow,deny原则判断拒绝执行php文件,对nginx同样也是可应用的


注:st0p专门为此正则用法写了文章,对这个正则不理解的可以参考
zzvips/article/90917

另外一种方法,这个我们都用过

复制代码 代码如下:


<Directory "/var/www/upload">
php_admin_flag engine off
</Directory>



相比之下我还是看好的一种方法

标签: nginx
免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

nginx是干嘛用的?Nginx正向代理和反向代理区别介绍

nginx是干嘛用的?Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是一款轻量级的Web 服务器/反向代理服务...

如何在debian11 Bullseye上安装Nginx Web服务器?

如何在Debian 11上安装Nginx?Nginx是一款轻量级的 HTTP 服务器,时常用于服务端的反向代理和负载均衡。Nginx是一个免费的开源网络服务器,提供 HTTP、反向代理、缓存和负载平衡...

nginx低版本出现LDAP认证安全漏洞(附宝塔面板解决方案)

loc有人发nginx出现了0day远程执行漏洞。不过各大厂都没有发修复方案。应该说影响范围较小。目前知道涉及的情况为1.21.5以及以下版本会有影响。不过tg群中1.21.6有人也复现了。本漏洞受影...

nginx是什么意思?nginx怎么启动和关闭?

nginx是什么意思?nginx(engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Ra...

在phpstudy集成环境下的nginx服务器下配置url重写

直接在对应的vhosts.conf配置文件的location / {}中添加以下内容:?1234567location / {      index index index.htm index.php...

nginx服务器是干嘛的?nginx的作用是什么

nginx服务器是干嘛的?nginxNginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是一款轻量级的Web 服务器...