LAMP环境搭建和配置(2)
配置httpd
默认虚拟主机
编辑hpptd的主配置文件
搜索httpd-vhost,把行首的#号删除
保存主配置文件,然后编辑虚拟主机配置文件
重新编辑配置段(第一段为默认虚拟主机)
ServerAdmin指定管理员邮箱
DocumentRoot为该虚拟主机站点的根目录,网站的程序就在这个目录下面
ServerName为这个网站的域名,后面的域名不支持写多个
ServerAlias为网站的第二域名,后面的域名可以写多个,用空格分隔
Errorlog为站点的错误日志
CustomLog为站点的访问日志
在配置文件中,只定义了两个站点,当第三个域名只想本机的时候,会去访问默认虚拟主机
创建网站目录
在网页中写入
重新加载httpd
测试
# systemctl stop firewalld 关闭防火墙
用户认证
对站点做全站的用户认证
编辑虚拟主机配置文件
Directory 指定认证的目录
AllowOverride AuthConfig 打开认证的开关
AuthName 自定义认证的名字
AuthType 认证的类型,一般为Basic
AuthUserFile 指定密码文件所在位置
require 指定需要认证的用户为全部可用用户
创建密码文件
重新加载
到真实电脑上修改hosts,把网站域名指向Linux机器
在最下面增加一行
完成之后用windows的浏览器访问网站
输入用户名和密码之后,进入网站
如果要对目录进行认证
配置域名跳转
IfModule 需要模块支持
RewriteEngine On 打开rewrite功能
RewriteCond 定义rewrite的条件
RewriteRule 定义rewrite规则,满足上面的条件时,规则才会执行
查看httpd是否已经加载该模块
编辑主配置文件
搜索rewrite,把行首的#去掉
保存配置
进行测试
配置访问日志
在主配置文件中定义访问日志的格式
%h为访问网站的IP
%l为远程登陆名
%u为用户名,当使用用户认证时,为认证的用户名
%t为时间
%r为请求的动作
%s为请求的状态码
%b为传输数据大小
%{Referer}为referer信息
%{User-Agent}i为浏览器标识
编辑虚拟主机配置文件
保存配置文件
测试
查看日志
限制静态元素记录日志,把日志按天归档
保存配置
测试
查看日志
测试在日志不记录静态元素
查看
配置静态元素过期时间
配置缓存过期时间
保存配置
编辑主配置文件
搜索expires,把前面的#删除
检查httpd是否加载expires模块
测试
测试txt文件
配置防盗链
保存配置
测试
使用非允许的referer
访问HTML类型的文件,不会被保护
访问控制
限制IP访问
<Directory>指定要限制访问的目录
order定义控制顺序
验证过程
创建admin目录,模拟网站后台
在后台目录下面创建文件,并写入内容
清空当天的访问日志
测试
查看
使用windows的浏览器访问
用浏览器访问,相当于拿windows机器访问linux服务器
单独针对每个文件做限制
把能上传文件的目录直接禁止解析PHP代码
保存配置
针对user_agent做访问控制
保存配置