登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

820716的博客-知识分享 向上的心!

知识分享 开阔向上的心胸! http://www.820716.net/blog

 
 
 

日志

 
 

在apache中禁止一个目录执行php脚本的权限  

2011-07-15 10:01:39|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
osharedocs
 
你好!
 
 
在apache中禁止一个目录执行php脚本的权限
 
在apache中禁止一个目录执行php脚本的权限

学习 http://www.bccn.net/Article/web/php/jszl/200512/2325.html

比如某些用于保存用户上传文件(头像、签名、帖子图)等的目录,这些目录只是图片和压缩文件等,并不需要php脚本执行权限,为了避免上传漏洞这些目录需要禁止掉php脚本的执行权限,方法如下:

方法一:

<Directory "e:/webroot/test"> 
    <Files ~ ".php"> 
        Order allow,deny 
        Deny from all 
    </Files>
</Directory>



方法二:php_flag engine off #表示此目录下的PHP文件不被解释执行,限没有PHP权限

当以 Apache 的模块方式运行 PHP 时,也可以通过 Apache 的配置文件(例如 httpd.conf)和 .htaccess 文件中的指令来修改 PHP 的配置选项(需要“AllowOverride Options”或“AllowOverride All”权限)。

在httpd.conf文件里有关在该目录的设定里加上 (PHP4以上版本)
"php_admin_flag engine off"

例:

<Directory /srv/www/htdocs/path>
    php_admin_flag engine off
</Directory>
 
 
 
 
====================================
把PHP脚本操作限制在web目录可以避免程序员使用copy函数把系统文件拷贝到web目录。
move_uploaded_file不受open_basedir的限制,所以不必修改php.ini里upload_tmp_dir的值。

把PHP脚本用phpencode进行加密,避免由于copy操作泄漏源码。

严格配置文件和目录的权限,只允许上传的目录能够让nobody用户可写

对于上传目录去掉PHP解释功能,可以通过修改httpd.conf实现:


php_flag engine off
#如果是php3换成php3_engine off




重启apache,upload目录的php文件就不能被apache解释了,即使上传了php文件也没有问题,只能直接显示源码。
 
 
 
================================================
 
 
用Apache服务器,可以通过配置来禁止该目录下的PHP文件的访问,有两种方式:
 
方式一:.htaccess控制,适用于没有服务器管理权限。
在可写文件夹的目录下,建一个.htaccess文件,内容为:
       <Files  ~  ".php"> 
           Order  allow,deny 
           Deny  from  all 
       </Files> 
 
方式二:修改Apache配置文件,适用于有服务器管理权限。
配置中增加如下内容:
<Directory  "<path_to_writeable_dir>"> 
       <Files  ~  ".php"> 
       Order  allow,deny 
       Deny  from  all 
       </Files> 
</Directory>
 
 
 
例如:
<Directory   你的图片目录>
              <FilesMatch   "\.(php|php3)$ ">  
                    Deny   from   all
              </FilesMatch>
</Directory> 
 
例如:
<Directory "e:/webroot/test">
    <Files ~ ".php">
        Order allow,deny
        Deny from all
    </Files>
</Directory> 
 
 
 
 
学习 构建安全的apache+mysql+php的web服务器 http://www.bizsn.com/info/a/fuwuqijishu/linuxfuwuqi/2009/0917/17459.html  
 
 
 
 
感谢您对我工作的支持和理解!
 
2011-07-15  09:50:25

 
陈龙 
 
启德教育集团
 
启德留学:http://www.eic.org.cn
启德学府:http://train.eic.org
.cn
留学论坛: http://bbs.eic.org.cn
留学博客:
http://www.eic.org.cn/blog/   
 
 
腾讯QQ:   84047848
移动电话: 13911098189
新浪微博: http://t.sina.com.cn/dragonchen82  @陈龙1982
  评论这张
 
阅读(1001)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018