LAMP3

15 访问控制-用户代理

可以理解为浏览器标识
修改虚拟主机文件

<IfModule mod_rewrite.c>
     RewriteEngine on 打开模块
     RewriteCond %{HTTP_USER_AGENT} .*curl.* [NC,OR]  以curl的方式 
     RewriteCond %{HTTP_USER_AGENT} .*baidu.com.*[NC]  以baidu的方式
     RewriteRule .* - [F] 定义规则
 </IfModule>

NC表示不区分大小写
OR 俩个条件都成立 或者的意思
F forbidden 针对上面做的规则,不允许访问的一个状态
然后先用curl测试可以看到被拒绝了
在这里插入图片描述

然后用网页测试是可以访问的
在这里插入图片描述

然后把curl改为浏览器Mozilla
在这里插入图片描述

结果正好相反了在这里插入图片描述

浏览器不可以访问了
在这里插入图片描述

然后curl还有一个参数
Curl –A 表示指定agent
先把配置文件改回curl
-A可以指定一个agent这时候的agent就不是curl,就可以访问了
在这里插入图片描述

16 PHP相关配置

查看php配置文件的位置

/usr/local/php/bin/php -i|grep -i "loaded configuration file"

在这里插入图片描述

Phpinfo这个函数可以来查看php配置文件
在这里插入图片描述

然后用浏览器查看
在这里插入图片描述

查看配置时候有许多警告,现在去除这些警告,警告是系统时间不安全不匹配
修改配置文件

vi /usr/local/php/etc/php.ini

修改timezone字段
在这里插入图片描述

然后警告就没有了
在这里插入图片描述

Disable_function 表示禁用一些方法,里面有许多关键的函数

disable_functions=eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,pas
sthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_e
xec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symli
nk,1eak,popepassthru,stream_socket_server,popen,proc_open,proc_close

把这些函数加入配置文件

vi /usr/local/php/etc/php.ini  一般也会禁用phpinfo

在这里插入图片描述

17php日志相关配置

vi /usr/local/php/etc/php.ini

再配置文件禁止方法里面加入phpinfo
在这里插入图片描述

然后再用浏览器访问就不能访问了
在这里插入图片描述

然后关闭这个提示将on改为off,然后网页就成为了空白页
在这里插入图片描述

配置错误日志
将错误日志打开
在这里插入图片描述

然后将他路径改为
在这里插入图片描述

错误分等级修改一下级别
在这里插入图片描述

然后刷新页面查看tmp下面的log
在这里插入图片描述
在这里插入图片描述

然后改错php再浏览网页查看log可以看到提示说没有定义方法,会提示语法错误

在这里插入图片描述

18 PHP配置访问文件

俩个网站被黑了一个另一个不影响,做一个隔离,防止其他被黑

vi /usr/local/php/etc/php.ini

编辑php文件
在这里插入图片描述

只允许访问admin和tmp

然后浏览器查看
在这里插入图片描述

查看别的网页则会报错500

在这里插入图片描述

19 PHP虚拟主机配置访问文件

根据站点来做限制,单独的对每个网站做限制
编辑虚拟主机

vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

添加
在这里插入图片描述

然后重新加载访问
可以发现只能访问upload下的网站

20 PHP动态扩展模块安装

查看php模块

/usr/local/php/bin/php -m

下载reids

wget https://pecl.php.net/get/redis-2.2.5.tgz

解压

tar -zxvf redis-2.2.5.tgz

但是并没有编译文件
需要生产编译文件
先执行phpize

/usr/local/php/bin/phpize

然后可以发现生成了configure文件
执行

[root@demo redis-2.2.5]# ./configure  --with-php-config=/usr/local/php/bin/php-config

然后执行make

[root@demo redis-2.2.5]# make

然后再执行make install

[root@demo redis-2.2.5]# make install

这是redis安装目录 扩展模块的存放目录
在这里插入图片描述
在这里插入图片描述

然后更改配置文件

[root@demo redis-2.2.5]# vi /usr/local/php/etc/php.ini

文件末尾添加
在这里插入图片描述

然后查看模块是否加入成功
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值