curl -I www.baidu.com
curl -I baidu.com
1.apache
企业中常用的web服务,用来提供http://(超文本传输协议)
2.apache的安装部署
打开selinux
yum install httpd -y
yum install httpd-manual -y ##安装apache手册
systemctl start httpd
systemctl enable httpd
systemctl start firewalld
firewall-cmd --permanent --add-service=http ##永久允许http
firewall-cmd --reload ##火墙重新加载
列出apache
编辑html
网页登陆
(1)修改默认发布文件:
默认发布文件就是访问apache时没有指定文件名称时默认访问的文件
这个文件可以指定多个,有访问顺序
vim /etc/httpd/conf/httpd.conf
编辑子配置文件,164行
让test.html优先于index.html
编辑一个test.html,重起httpd
再次访问,将默认访问test.html
(2)修改默认端口:
43行 Listen 8080 ##修改默认端口为8080
firewall-cmd --permanent --add-port=8080/tcp ##火墙允许
firewall-cmd --reload
(3)修改默认发布目录:
vim /etc/httpd/conf/httpd.conf
120行添加
125-127行添加
126行为赋予所有权限
重起服务
创建目录
编辑html
查看文件安全上下文并修改
递归刷新并显示刷新过程
测试
4.apache 的虚拟主机
在/etc/hosts中添加ip和网址
添加虚拟主机文件并编辑html,内容有别即可
到httpd的子配置文件中编辑本地子配置文件adefault.conf
在网页中登陆刚才添加的三个网址,内容都是本机
编辑tom和jerry的配置文件
再次测试
注意:
若测试无效,则可能是缓存问题
删除缓存
ctrl+shift+delete
5.apache内部的访问控制
(1)访问黑白名单
白名单
vim /etc/httpd/conf.d/adefult.conf
如图
Order顺序为先执行禁止,再执行允许
即禁止所有,除了172.25.254.136
黑名单
允许所有,除了172.25.254.136
(2)用户访问的控制方式
创建一个admin的html,编辑新的内容
添加用户和密查看添加的用户,密码被加密
htpasswd -cm /etc/httpd/htuser 用户名1
htpasswd -m /etc/httpd/htuser 用户名2
注意:
-cm
c创建
m更改
再次创建用户把c去掉,否则会覆盖上次创建的用户
编辑配置文件
vim /etc/httpd/conf.d/adefult.conf
注意:将前面的黑白名单取消掉,即允许所有用户
注意:
13行和14行的功能类似选一种即可
如上面表示允许本机的所有用户
登陆admin,需要输入用户名和密码
登陆成功
设置只允许admin登陆
6.apache识别语言
(1)html
(2)php
vim /var/www/html/index.php
测试
172.25.254.136/index.php
(3)cgi
创建cgi目录
修改安全上下文
编辑cgi语言文件
给执行权限
vim cgi/index.cgi
用命令测试
注意:若不会cgi语言,可以在http手册中查看
登陆172.25.254.136/manual
复制上面到编辑配置文件并作修改
测试
172.25.254.136/cgi/index.cgi
^(/.*)$
(4)wsgi(cgi 安全模式)
yum install mod_wsgi -y
vim /var/www/html/cgi/westos.wsgi
chmod +x westos.wsgi
用python语言编辑脚本
编辑配置文件并给执行权限
vim /etc/httpd/conf.d/adefult.conf
测试172.25.254/WSGI
7.https认证构建
http超文本传输协议
https超文本传输协议加密
简单来说就是如何让自己的http变成https
yum install mod_ssl -y
yum install crypto-utils -y
加锁
genkey www.westos.com
CA认证选择NO
其余的都选择next
认证信息填写
编辑配置文件
vim /etc/httpd/conf.d/ssl.conf
101行和108行复制上面的.crt和.key
在浏览器进入https://www.westos.com
选择下方add
该网址已经被认证嗯
8.设定https虚拟主机并设定网页重写
简单来说就是如何让一个网址直接跳到https://
cd /var/www/virtual/
mkdir westos.com/login
vim westos.com/login/index.html
编辑配置文件
vim /etc/httpd/conf.d/adefult.conf
^(/.*)$ ##客户端在浏览器地址栏中输入的所有字符
https:// ##强制客户端加密访问
%{HTTP_HOST} ##客户端请求主机
$1 ##表示 ^(/.*)$的值
[redirect=301] ##更改永久生效 302一次性生效
测试
输入login.westos.com
直接跳到https://login.westos.com