- 此篇博客将根据以下四大模块来对HTTP协议在Linux,即Red Hat7.2版本下的配置进行详细的解释
一、配置文件的位置
二、CA证书
三、虚拟目录
四、用户控制
一、配置文件的位置
Httpd的主配置文件: /etc/httpd/conf/httpd.conf
SSL的主配置文件: /etc/httpd/conf.d/ssl.conf
虚拟主机配置文件:/etc/httpd/conf.d/vhosts.conf
Linux的操作系统的域名解析: /etc/hosts
密钥对文件:/etc/pki/tls/certs
制作证书: make xxxx.crt
创建文件 mkdir /www/{100,200} –pv
文件权限:
< Directory />
AllowOverride none
Require all denied
</ Directory>
错误日志:
ErrorLog
“/var/log/httpd/dummy-host2.example.com-error_log”
CustomLog
“/var/log/httpd/dummy-host2.example.com-access_log” common
二、CA证书(Https 443端口)
1.创建证书
在默认文件下直接可以用make来制作证书文件,当然也可以自己定义证书路径,但是就需要用open ssl来书写,较为麻烦。
2. 证书文件
创建完成后会在/etc/pki/tls/certs下生成两个两个用于认证的证书文件。
3.更改虚拟主机文件的认证访问目录
1)在主配置文件中,将以下用于SSL认证的命令复制到虚拟主机文件目录内
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!SEED:!IDEA
SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
a)更改成以下这种形式
b)将原本生成的在 /etc/pki/tls/certs 下的xixi.key 复制到/etc/pki/tls/private下

a、b操作的目的是为了让虚拟主机中的证书文件匹配到相对应的文件,即虚拟主机中写的是目录(类似于IP层的OSPF协议中的LSDB链路状态数据库),要匹配到对应的文件就要在目录下有相对应的文件,以上是展示了两种写法
2)编写虚拟主机文件,在IP地址后面跟上443端口
三、虚拟目录
说明:
主机域名的别名用ServerAlias指定,虚拟目录的别名用Alias指定,Alias后的虚拟目录是 /www/yichen下的openlab 访问这个目录实际上访问的是/ggg/openlab下的index.html 要注意ggg文件可能没有权限,所以要有允许覆盖的权限
目的:
某个网站登录后(输入了用户名与密码),其内部的某些目录就不再需要登录用户名与密码了。
四、用户控制
1.编写虚拟主机文件
具体步骤:
设置登陆类型为基本类型(账号)
网站提示登录的信息
将用户的基本信息(密码)存入到etc/httpd/users中
允许xixi haha 用户请求登录
2.创建用户
第一次创建需要添加-c选项
3.测试
这时,如果访问的是https://192.168.1.100/openlab/的话,因为虚拟目录的真实路径是/ggg/openlab,这个目录是有权限的,所以不用输入账号密码。