iis、apache与nginx禁止目录执行asp、php脚本的实现方法

softyun3年前服务器41

一般iis中比较简单,iis6如下图所示即可:

很多购买虚拟主机空间的用户,如果空间商提供了在线管理程序,也可以实现。具体的看下帮助即可。
需要知道目录名称,设置即可。

iis7+禁止执行php等
IIS7也类似于IIS6.0,选择站点对应的目录,data、uploads及静态html文件目录,双击功能试图面板中的“处理程序映射”(如图2)
 

在“编辑功能权限……”中,我们直接去除脚本的执行权限即可。(如图3)


apache中一般是通过.htaccess文件来限制
Apache环境规则内容如下:Apache执行php脚本限制 把这些规则添加到.htaccess文件中

复制代码 代码如下:

RewriteEngine on RewriteCond % !^$
RewriteRule uploads/(.*).(php)$ – [F]
RewriteRule data/(.*).(php)$ – [F]
RewriteRule templets/(.*).(php)$ –[F]


以Apache 模块方式运行 PHP,你可以在vhosts配置文件中添加如下代码:

 

禁止upload目录执行php文件权限

?

1
2
3
4
5
6
7
8
9
<Directory /www/zzvips/upload>
php_flag engine off
</Directory>
<Directory ~ "^/www/.*/upload">
 <Files ~ ".php">
 Order allow,deny
 Deny from all
 </Files>
</Directory>






nginx环境规则内容如下:nginx执行php脚本限制

LNMP有一个缺点就是目录权限设置上不如Apache,有时候网站程序存在上传漏洞或类似pathinfo的漏洞从而导致被上传了php木马,而给网站和服务器带来比较大危险。建议将网站目录的PHP权限去掉,当访问上传目录下的php文件时就会返回403错误。

首先要编辑nginx的虚拟主机配置,在fastcgi的location语句的前面按下面的内容添加:

复制代码 代码如下:

location ~ /(data|uploads|templets)/.*.(php|php5)?$ {
deny all;
}

 

下面是补充:

以下配置均在nginx配置的server处添加

 

复制代码 代码如下:

location ~ /attachments/.*.(php|php5)?$ {
deny all;
}

 

禁止attachments目录执行php文件权限

2、多个目录

 

复制代码 代码如下:

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

 

禁止attachments与upload目录执行php文件权限

配置完后,重新reload nginx即可。
好了就这些吧,做了这些应该不会有什么问题基本够用!

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

相关文章

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

nginx是什么服务器?没有听过nginx?那么一定听过它的”同行”Apache吧!Nginx同Apache一样都是一种WEB服务器,基于REST架构风格,以统一资源描述符(Uniform Resou...

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

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

宝塔面板Nginx环境中出现404 Not Found的解决方法

宝塔BT面板错误提示“404 Not Found nginx”的解决方法,服务器之家分享不同原因引起404的解决方法:宝塔404 Not Found的解决方法 首先要...

宝塔面板nginx关闭状态,启动不了解决办法

安装好宝塔vps,绑定域名然后出现通过宝塔后台查看 发现NGINX服务器关闭状态。宝塔面板nginx关闭状态,启动不了。输入service nginx start然后报错:解决方法:需要杀掉进程,再重...

解决宝塔面板nginx/apache防火墙后无法启动

宝塔面板是最好用的服务器管理面板,不过有些插件是需要收费的,免费版的Nginx防火墙的功能比收费版Nginx防火墙要差一些,能有钱是更好的,不管是开心版还是正版,我只要安装了nginx防火墙以后,ng...

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

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