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


配置 vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf 如下
<Directory /data/wwwroot/www.111.com/upload>
php_admin_flag engine off
</Directory>

测试:访问upload就直接跳出源代码,说明已经禁止成功了

curl测试时直接返回了php源代码,并未解析
二、限制user_agent
user_agent可以理解为浏览器标识
核心配置文件内容
vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} .*curl.* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} .*baidu.com.* [NC]
RewriteRule .* - [F]
</IfModule>

测试:
/usr/local/apache2.4/bin/apachectl -t
/usr/local/apache2.4/bin/apachectl graceful
直接出现403禁止访问
[root@davery ~]# curl -x127.0.0.1:80 www.111.com/upload/1.php -I

这里user_agent为"curl/7.29.0"匹配了第一个条件RewriteCond %{HTTP_USER_AGENT} .*curl.* [NC,OR],
curl -A "123123" 指定user_agent
[root@davery ~]# curl -A "123123" -x127.0.0.1:80 www.111.com/upload/1.php -I

这里user_agent为自定义"123123"配有匹配任何条件,所以状态码为200
三、php相关配置
查看php配置文件位置
/usr/local/php/bin/php -i|grep -i "loaded configuration file"

date.timezone
disable_functions eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close
error_log, log_errors, display_errors 日志
error_reporting open_basedir
php_admin_value open_basedir "/data/wwwroot/111.com:/tmp/"
编辑vim /usr/local/php7/etc/php.ini配置文件

找到disable_functions

禁掉所有函数,

找到date.timezone

定义地方

日志

改为

这样就不能访问phpinfo了

错误日志

改为

查找

改为


测试






编辑一个错误文件并测试


搜索

改为


Linux centosVMware apache 限定某个目录禁止解析php、限制user_agent、php相关配置的更多相关文章
- 限定某个目录禁止解析php 限制user_agent php相关配置
- 限定某个目录禁止解析php 、限制user_agent 、php的配制文件、PHP的动态扩展模块
1. 限定某个目录禁止解析php(有些目录用户可以上传文件或图片,可能会被恶意者上传其它文件):编辑:/usr/local/apache2.4/conf/extra/httpd-vhosts.conf ...
- 限定某个目录禁止解析php、限制user_agent、php相关配置
6月1日任务 11.28 限定某个目录禁止解析php11.29 限制user_agent11.30/11.31 php相关配置扩展apache开启压缩 http://ask.apelearn.com/ ...
- Linux centosVMware Apache 配置防盗链、访问控制Directory、访问控制FilesMatch
一.配置防盗链 通过限制referer来实现防盗链的功能 配置文件增加如下内容 vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //改为如下 ...
- 如何让你的Apache支持include文件解析和支持shtml的相关配置
源地址:http://www.itokit.com/2011/0430/65992.html Apache支持include文件解析shtml首先要应该修改Apache配置文件httpd.conf . ...
- Apache和Nginx下禁止访问特定的目录或文件
大家是否测试Apache做了目录禁止浏览后,目录下面的txt文件还是可以显示里面的内容的.例如:http://www.domain.com/test/此访问会报403错误,但是如果test下有很多tx ...
- LAMP 2.5 Apache禁止解析php
某个目录下禁止解析 php,这个很有用,我们做网站安全的时候,这个用的很多,比如某些目录可以上传文件, 为了避免上传的文件有木马, 所以我们禁止这个目录下面的访问解析 php. 安装目录下有个data ...
- apache启动目录(禁止目录)与设置默认入口文件的方法
设置默认入口文件的方法: 打开apache的conf目录,找到httpd.conf文件,打开这个文件,搜索dir_module,找到以下截图修改位置进行修改,注意重启apache服务器,修改位置才会生 ...
- Linux更改Apache网站目录出错:Document root must be a directory解决
Linux更改Apache网站目录出错:Document root must be a directory解决 修改 DocumentRoot <Directory " ...
随机推荐
- 清空表单 autocomplete="off"
清空表单 autocomplete="off" <form action="/sm/baziqiming.aspx" method="post& ...
- 【题解】Rusty String [CF827E]
[题解]Rusty String [CF827E] 传送门:\(\text{Rusty String}\) \(\text{[CF827E]}\) [题目描述] 多组数据,每组数据给出一个由 \(V, ...
- 吴裕雄 PYTHON 人工智能——基于MASK_RCNN目标检测(5)
import os import sys import numpy as np import tensorflow as tf import matplotlib import matplotlib. ...
- Arrays.asList() 踩坑
该方法是将 数组转化为list,但转换后的list集合,不支持add 和 remove 代码如下: 阅读相关: 本类演示了Arrays类中的asList方法 (1) 该方法对于基本数据类型的数组支持 ...
- beyond compare 用法
1.过滤器用法:点击小眼睛(回话-->回话设置)打开过滤器界面----设置多个过滤文件或目录直接使用回车键 2.比较时最好先设置编码以防出现乱码问题 工具-->文件格式. 3.比较时出现乱 ...
- PyQt5打印机
1.打印机操作(打印默认文本里面的内容)from PyQt5 import QtGui,QtWidgets,QtPrintSupportfrom PyQt5.QtWidgets import *imp ...
- 新建文件的UID和GID
默认情况下:新建文件的用户ID为操作当前文件进程的有效用户ID(参考以前文章),新建文件的组ID为操作当前文件的进程的有效组ID 特殊情况:当当前新建文件的目录的SET-GID位被设置时,那么新建文件 ...
- stackADT
stack.h #ifndef STACK_H_INCLUDED #define STACK_H_INCLUDED #include <stdbool.h> typedef struct ...
- 吴裕雄--天生自然TensorFlow2教程:多输出感知机及其梯度
import tensorflow as tf x = tf.random.normal([2, 4]) w = tf.random.normal([4, 3]) b = tf.zeros([3]) ...
- Django 中的时区
Django 中的时区 在现实环境中,存在有多个时区.用户之间很有可能存在于不同的时区,并且许多国家都拥有自己的一套夏令时系统.所以如果网站面向的是多个时区用户,只以当前时间为标准开发,便会在时间计算 ...