实验环境 redhat7.0
下载安装
yum install httpd -y //安装服务
yum install httpd-manual -y //安装手册
firewall-cmd --permanent --add-service=http //添加到防火墙策略
firewall-cmd --reload //重新加载策略
在浏览器中输入服务机ip测试如下,安装成功
手册我们可以查找一些帮助
默认发布页imdex.html
默认发布目录 /var/www/html
测试结果
通过编辑主配置文件修改默认发布页text.html
vim /etc/httpd/conf/httpd.conf
修改默认发布目录
首先配置主配置文件,注释掉初始的默认发布目录,然后便编写你想要设置的发布目录
vim /etc/httpd/conf/httpd.conf
然后在系统中建立真实的目录,建立默认发布页
修改文件的上下文标签,如果selinux没有开启,就不用修改
测试与/westos/html/index.html内容一致
修改默认端口,在浏览器访问http服务时,输入ip默认访问的端口时80
编辑主配置文件 vim /etc/httpd/conf/httpd.conf 注释掉默认端口80,修改为8080
netstat -antlupe | grep httpd 查看到修改前后http服务端口的变化
添加端口8080到防火墙策略
测试无法连接,修改后默认端口80是无法访问http服务,但是加上端口8080就可以访问了
虚拟主机
在真实环境中我们访问网站都是通过域名去访问,由dns提供域名访问机制,列入访问www.qq.com,news.qq.com等等多个域名,这就需要许多台http服务器,有时候会浪费资源,因此可以通过http虚拟主机这一机制来实现一台服务器设备提供多个域名访问
首先建立默认虚拟主机访问配置文件对应访问默认浏览主页www.westos.com
默认发布目录为默认的初始发布目录
vim /etc/httpd/conf.d/default.conf
建立默认虚拟主机访问配置文件对应访问浏览主页music.westos.com
vim /etc/httpd/conf.d/music.conf
建立默认虚拟主机访问配置文件对应访问浏览主页news.westos.com
vim /etc/httpd/conf.d/news.conf
三个文件配置如下
给music.westos.com和news.westos.com建立真实的发布目录和发布主页要与配置文件路径相对应,修改selinux标签与上面方法一致
客户机测试时,vim /etc/hosts修改本地dns,来提供测试,不同域名访问到不同主页,都是由一台服务器所提供
配置访问权限如下
允许所有,然后拒绝172.25.254.70这个ip对应的主机
vim music.conf
访问测试,172.25.254.70这台主机访问时被拒绝跳到测试页,但其他ip设备就可以访问
同样先拒绝所有,只允许172.25.254.70这给ip对应的主机
访问测试,只有172.25.254.70可以访问
建立用户访问
首先建立用户访问目录以及发布页
在/etc/httpd/中新建用户文件并添加用户admin,之后输入密码
htpasswd -cm userpass admin,之后添加直接使用-m,否则会覆盖掉原来的文件
配置文件,添加关于admin发布目录下发布页的用户访问控制
测试结果使用用户和密码就可以访问music.westos.com/admin
修改参数,注释掉Require valid-user意思时所有用户都可以访问,改为Require user admin 只有用户admin才可以访问
测试使用admin用户输入密码后直接跳转到发布页,但是admin1用户被拒绝访问,多次输入密码无法跳转到发布页
php发布页
http支持多种发布页,php就是其中一种,只需下载安装php,然后编写一个php发布主页,重启httpd服务
测试
cgi发布页
cgi可以是比较原始实现动态网站开发,html只能实现静态网站
建立一个cig发布目录以及发布页,输入以下cgi命令,修改发布页权限为可执行文件,动态页面需要通过程序执行来实现
配置文件,加入关于cgi默认发布设置
修改selinux上下文标签,可以查找关于cgi的标签,人后设置为可执行的标签
访问测试
修改发布页
在测试,每次刷新都会执行date命令,时间也会随之改变
证书访问机制
默认情况下数据在客户端和服务端的传输是不安全的,ssl协议可以提供数据传输的认证机制,通过加密传输,提高安全性
下载安装ssl软件,提供证书的发布,
https添加到防火墙策略,重新启动服务,
使用https测试时提示连接不要全,因为浏览器没有下载加载证书,不安全无法访问,然后下载证书确认安全就可以访问了,这里的证书时默认
加密证书的生成
下载工具加密
执行命令genkey www.westos.com机密www.westos.com域名
完成加密后会生成如下两个机密文件在以下目录,配置ssl服务主配置文件加密方式
测试查看加载的证书是我们生成的证书
设置不同域名访问同一登陆页
建立配置配置文件,以及发布目录和发布页
配置文件如下将访问80端口都转换到443端口,所有跳转到了login的发布页
测试