如何在Apache和Nginx禁止上传目录里PHP的执行权限

 更新时间:2016年10月05日 14:52:04   转载 投稿:hebedich  
这篇文章主要介绍了如何在Apache和Nginx禁止上传目录里PHP的执行权限的具体方法,非常简单,有需要的小伙伴可以参考下

Apache下禁止指定目录运行PHP脚本

在虚拟主机配置文件中增加php_flag engine off指令即可,配置如下:

 Options FollowSymLinks
 AllowOverride None
 Order allow,deny
 Allow from all 
 php_flag engine off

另外一种方法,是设置在htaccess里面的,这个方法比较灵活一点,针对那些没有apapche安全操作权限的网站管理员:
Apache环境规则内容如下:Apache执行php脚本限制 把这些规则添加到.htaccess文件中
代码如下:

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

Nginx下禁止指定目录运行PHP脚本

Nginx更简单,直接通过location条件匹配定位后进行权限禁止,可在server配置段中增加如下的配置。

如果是单个目录:

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

如果是多个目录:

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

注意:这段配置文件一定要放在下面配置的前面才可以生效。

location ~ \.php$ {
fastcgi_pass  127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include    fastcgi_params;
}

最后给一个完整的配置示例

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

location ~ .php$ {
 try_files $uri /404.html;
 fastcgi_pass  127.0.0.1:9000;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 include    fastcgi_params;
}

配置完后记得重启Nginx生效。

相关文章

  • Linux中利用sudo进行赋权的方法详解

    Linux中利用sudo进行赋权的方法详解

    sudo的目的:为非根用户授予根用户的权限,下面这篇文章主要给大家介绍了关于Linux中利用sudo进行赋权的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-01-01
  • Linux下乱码问题的解决方案小结

    Linux下乱码问题的解决方案小结

    linux系统中文件名内容为urf8编码, windows系统中文件名默认为gbk编码, 多数文档使用gbk编码,系统采用utf8编码.这篇文章主要介绍了Linux下乱码问题的解决方案,需要的朋友可以参考下
    2016-10-10
  • linux中ipset命令的使用方法详解

    linux中ipset命令的使用方法详解

    ipset是linux kernel的一个功能,可以将ip等组合成一个ipset,在iptables中可以直接指定ipset。下面这篇文章主要给大家介绍了关于linux中ipset命令的使用方法,文中介绍的非常详细,需要的朋友们下面来一起学习学习吧。
    2017-11-11
  • 什么是Linux软链接和Linux硬链接

    什么是Linux软链接和Linux硬链接

    这篇文章主要为大家详细介绍了什么是Linux软链接和Linux硬链接,在默认情况下,ln命令产生硬链接,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • Linux ps和pstree命令知识点总结

    Linux ps和pstree命令知识点总结

    在本篇文章里小编给大家分享的是关于Linux ps和pstree命令知识点总结内容,需要的朋友们可以学习参考下。
    2020-02-02
  • Linux基础学习之利用tcpdump抓包实例代码

    Linux基础学习之利用tcpdump抓包实例代码

    tcpdump是Linux下面的一个开源的抓包工具,和Windows下面的wireshark抓包工具一样, 支持抓取指定网口、指定目的地址、指定源地址、指定端口、指定协议的数据。下面这篇文章主要给大家介绍了关于Linux基础学习之利用tcpdump抓包的相关资料,需要的朋友可以参考下。
    2017-12-12
  • 详解Linux Centos7下安装Python的方法

    详解Linux Centos7下安装Python的方法

    本篇文章主要介绍了详解Linux Centos7下安装Python的方法,具有一定的参考价值,有兴趣的可以了解一下。
    2017-01-01
  • 浅谈RHEL 7中systemctl 的用法(替代service和chkconfig)

    浅谈RHEL 7中systemctl 的用法(替代service和chkconfig)

    下面小编就为大家带来一篇浅谈RHEL 7中systemctl 的用法(替代service和chkconfig)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • CentOS7.0下安装FTP服务的方法

    CentOS7.0下安装FTP服务的方法

    本篇文章主要介绍了CentOS7.0下安装FTP服务的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • Linux下监视NVIDIA的GPU使用情况详解

    Linux下监视NVIDIA的GPU使用情况详解

    这篇文章主要介绍了Linux下监视NVIDIA的GPU使用情况详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09

最新评论