欢迎来到代码驿站!

Linux

当前位置:首页 > 服务器 > Linux

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

时间:2021-01-31 08:08:18|栏目:Linux|点击:
我们来看俩段通常对上传目录设置无权限的列子,配置如下:
复制代码 代码如下:

<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专门为此正则用法写了文章,对这个正则不理解的可以参考
https://www.jb51.net/article/25673.htm

另外一种方法,这个我们都用过
复制代码 代码如下:

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


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

上一篇:Ubuntu环境下的nwjs安装及使用教程

栏    目:Linux

下一篇:Linux服务器间文件实时同步的实现

本文标题:apache,nginx上传目录无执行权限的设置方法

本文地址:http://www.codeinn.net/misctech/54219.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有