某个目录下禁止解析 php,这个很有用,我们做网站安全的时候,这个用的很多,比如
某些目录可以上传文件, 为了避免上传的文件有木马, 所以我们禁止这个目录下面的访问解
析 php.

安装目录下有个data目录,查看一下他的权限。

ll /data/www/data/

apache运行的用户就是daemon。属主改成daemon因为在daemon下生成文件。

例子:

在论坛里发个帖子,上传本地图片。

查找这个图片。

ls /data/www/data/attachment/forum///

52365dsf89t55s.jpg

data目录可以被用户写,用户上传个木马文件被执行,就会很危险。我们应该做些限制。

打开虚拟机配置文件

vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 

插入

<Directory /data/www/data>
php_admin_flag engine off
<filesmatch "(.*)php">
Order deny,allow
Deny from all
</filesmatch>
</Directory>

说明:php_admin_flag engine off 这个语句就是禁止解析 php 的控制语句,但只这样配
置还不够,因为这样配置后用户依然可以访问 php 文件,只不过不解析了,但可以下载,用
户下载 php 文件也是不合适的,所以有必要再禁止一下。

检测是否正确,重启

apachectl -t
/usr/local/apache2/bin/apachectl restart

在/data/www/data下写一个php文件试试能不能解析

vim /data/www/data/info.php
<?php
phpinfo();
?>

在浏览器里输入

http://www.denny.com/data/info.php

错误403

把禁止解析php的文件写成

<Directory /data/www/data>
php_admin_flag engine off
# <filesmatch "(.*)php">
# Order deny,allow
# Deny from all
# </filesmatch>
</Directory>

用户访问就会下载这个php文件。

如果全部注释掉

#<Directory /data/www/data>
#php_admin_flag engine off
# <filesmatch "(.*)php">
# Order deny,allow
# Deny from all
# </filesmatch>
#</Directory>

用户访问就会解析成功,信息就会泄露。就有被攻击的危险。

LAMP 2.5 Apache禁止解析php的更多相关文章

  1. LAMP 2.6 Apache 禁止指定user_agent

    user_agent 我把它叫做浏览器标识, 目前主流的浏览器有 IE. chrome. Firefox. 360. iphone上的 Safari.Android 手机上的.百度搜索引擎.googl ...

  2. apache禁止php解析--安全

    #禁止解析php <Directory "/data/www/data/"> php_admin_flag engine off <filesmatch &quo ...

  3. Linux centosVMware apache 限定某个目录禁止解析php、限制user_agent、php相关配置

    一.限定某个目录禁止解析php 核心配置文件内容 vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf 先创建.编辑一个php 配置 vim /u ...

  4. Apache配置 10. 访问控制-禁止解析PHP

    (1)简述 对于使用PHP语言编写的网站,有一些目录是有需求上传文件的.如果网站代码有漏洞,让黑客上传了一个用PHP写的木马,由于网站可以执行PHP程序,最终会让黑客拿到服务器权限. 为了避免这种情况 ...

  5. centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 访问控制 apache rewrite 配置开机启动apache tcpdump 第二十节课

    centos    LAMP第二部分apache配置  下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转  配置apache的访问日志  配置静态文件缓存  配置防盗链 ...

  6. LAMP第二部分apache配置

    课程大纲:1. 下载discuz! mkdir /data/wwwcd /data/wwwwget  http://download.comsenz.com/DiscuzX/3.2/Discuz_X3 ...

  7. linux安装lamp环境(linux+apache+mysql+php)

    源码安装 本次使用 Centos7.2 MySQL5.7.22 Apache2.4.37 PHP5.6.38 安装Apache 安装httpd和所需依赖:gcc, apr, apr-util,apr- ...

  8. ZH奶酪:Ubuntu 14.04安装LAMP(Linux,Apache,MySQL,PHP)

    (Linux Operating System,Apache Web Server,MySQL database,PHP) 首先,一个三行命令搞定的方法: sudo apt-get update su ...

  9. 限定某个目录禁止解析php 、限制user_agent 、php的配制文件、PHP的动态扩展模块

    1. 限定某个目录禁止解析php(有些目录用户可以上传文件或图片,可能会被恶意者上传其它文件):编辑:/usr/local/apache2.4/conf/extra/httpd-vhosts.conf ...

随机推荐

  1. JAVA 中的集合框架

    java集合框架提供了一套性能优良.使用方便的接口和类,它们位于java.util包中 一.集合与数组 数组:(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知 ...

  2. JavaScript文件下载 兼容所有浏览器 不可跨域

    前端文件下载 兼容所有浏览器 download.js文件下载,几乎支持所有类型下载,详细内容参考官网 http://danml.com/download.html 引入文件 <script sr ...

  3. linux(centos)安装Maven

    搭建maven 下载jar包,将apache-maven-3.2.2-bin.tar.gz上传到服务器 1.解压 tar -zvxf apache-maven-3.2.2-bin.tar.gz 2.移 ...

  4. 解决mssql for linux 中文乱码问题

    什么叫一波未平一波又起,这就是,好不容易安装完成了,在用的时候居然出现了乱码,很是头疼,但还是解决了这个蛋疼的问题,在windows中使用mssql这么久,从来没出现过中文乱码的情况,具体原因是出现在 ...

  5. Uploading files using ASP.NET Web Api

    http://chris.59north.com/post/Uploading-files-using-ASPNET-Web-Api

  6. JavaScript 编程模式

    编程模式,是源自经验和探索总结出的最佳实践方案,既有助于可读性和可维护性,也有助于提升整体性能. 行为隔离 总则:结构.样式和行为之间两两隔离. 避免在结构中使用内联事件 尽量少用 <scrip ...

  7. IIS 高并发的相关配置

    前言: 随着业务量的增加,服务器流量的增长增长了好多,高峰期会出现 503 的错误,IIS 对请求数的配置默认是 1000,无法满足现状的需求: 需要收集性能数据如下: 1.Windows性能监视器, ...

  8. Spring_总结_04_高级配置(六)_Bean的初始化和销毁

    一.前言 本文承接上一节:Spring_总结_04_高级配置(五)_运行时注入值

  9. Oracle 11g 客户端连接 oracle 10g 服务端,乱码问题

    从网上搜索资料基本确定:字符集错误 Pl/sql 连接到oracle 数据库   “select userenv('language') from dual” 找到服务端的对应的字符集,拷贝之: 到本 ...

  10. Nhibernate系列学习之(三) Criteria查询表达式增删改查

    Criteria查询表达式: 正如我们所见,Expression对查询语句的表达式进行了封装和限制,下表列出了Expression所有的方法,以及每个方法所对应的查询表达式及其限制. Restrict ...