Apache的管理及优化

一、Apache的作用:

在web被访问时通常使用http://的方式

http://超文本传输协议

http:// 超文本传输协议提供软件:
Apache;nginx;stgw;jfe;Tengine

二、Apache的安装及启用:

在这里插入图片描述
更改Apache的服务端口:
在这里插入图片描述
关闭防火墙:
在这里插入图片描述
访问服务器的8080端口:
在这里插入图片描述

Apache的默认端口为80,上图默认防火墙关闭,selinux关闭。
若防火墙未关闭需要执行以下操作:

firewall-cmd --list-all查看火墙信息
firewall-cmd --permanent --add-service=http在火墙中永久开启http访问
firewall-cmd --permanent --add-service=https在火墙中永久开启https访问
firewall-cmd --permanent --add-port=8080/tcp开启一个协议为tcp的8080端口
firewall-cmd --reload刷新火墙使设定生效

若selinux也未关闭的话,需要再执行以下操作:

semanage port -l l grep http查看系统是否给http开放有8080端口
semanage port -a -t http_port_t -p tcp 8080没有的话,需要手动添加
systemctl restart httpd最后重启Apache服务

三、Apache的基本信息:

服务名称httpd
配置文件/etc/httpd/conf/httpd.conf ##主配置文件
配置文件/etc/httpd/conf.d/*.conf ##子配置文件
默认发布目录/var/www/html
默认发布文件index.html
默认端口80 #http 443 https
用户apache
日志/etc/httpd/logs

四、Apache的基本配置 :

默认发布文件
编辑主配置文件,添加名为sk.html的发布文件:
默认访问顺序第一个,无sk.html时访问index.html
在这里插入图片描述
在发布目录下建立sk.html发布文件,内容自拟,并再次访问:
在这里插入图片描述
默认发布目录
更改默认发布目录为/westos/html/:
在这里插入图片描述
在默认发布目录下建立发布文件,内容自拟,并访问:
在这里插入图片描述
修改了默认发布路径之后,如果selinux是强制状态,需要修改现在默认发布路径的安全上下文,执行以下操作:
semanage fcontext -a -t httpd_sys_content_t ‘/westos(/.*)?’
restorecon -RvvF /westos/
systemctl restart httpd

五、Apache的访问控制:

基于客户端ip的访问控制
ip白名单:
更改主配置文件,
只允许172.25.254.107访问:
在这里插入图片描述
172.25.254.7的访问请求被拒绝:
在这里插入图片描述
IP黑名单:
更改主配置文件,
禁止172.25.254.107访问:
在这里插入图片描述
在这里插入图片描述
其余ip均可访问:
在这里插入图片描述
基于用户认证

编辑认证文件:

htpasswd -cm /etc/httpd/htpasswdfile 用户名生成认证文件

注意:当/etc/httpd/htpasswdfile存在那么在添加用户时不要加-c参数否则会覆盖源文件内容
在这里插入图片描述

AuthUserfile /etc/httpd/htpasswdfile指定认证文件
AuthName “Please input your name and password”认证提示语
AuthType basic认证类型
Require user admin允许通过的认证用户 2选1
Require valid-user允许所有用户通过认证 2选1

设置只允许sk用户认证访问:
在这里插入图片描述
doudou用户添加了认证信息:
在这里插入图片描述
doudou用户认证不通过:
在这里插入图片描述
sk用户认证通过,成功访问:
在这里插入图片描述
在这里插入图片描述
更改主配置文件,允许所有用户通过认证:
在这里插入图片描述
注:需要清理浏览器缓存信息
在这里插入图片描述

六、Apache的虚拟主机:

创建虚拟用户的发布目录和发布文件内容;添加地址解析,即可通过域名访问:
在这里插入图片描述
更改虚拟主机的配置文件:

ServerName虚拟主机域名
DocumentRoot指定默认发布目录
CustomLog指定日志存放位置

在这里插入图片描述
重启服务:
在这里插入图片描述
测试过程:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

七、Apache的语言支持:

PHP语言
安装php,添加php发布文件内容如下,重启服务即可访问:
在这里插入图片描述
cgi语言
安装cgi语言的解释器:
创建cgi的发布目录
在这里插入图片描述
更改cgi的发布文件:
在这里插入图片描述
在http.conf中,定义的pl运行位置是/var/www/cgi-bin/,而现在,运行的位置变化了,需要重新说明:
在这里插入图片描述
访问一下:
在这里插入图片描述

八、Apache的加密访问:

安装加密插件
在这里插入图片描述
生成私钥
生成证书签名文件
在这里插入图片描述
生成证书
在这里插入图片描述

x509证书格式
-req请求
-in加载签证名称
-signkey/etc/pki/tls/private/www.westos.com.key私钥

编辑/etc/hosts:
添加地址解析
在这里插入图片描述
编辑配置文件/etc/httpd/conf.d/ssl.conf:
添加私钥位置和证书位置
在这里插入图片描述
编辑配置文件/etc/httpd/conf.d/vhost.conf:
普通访问也会跳转至加密访问:
在这里插入图片描述
自拟发布文件内容
在这里插入图片描述
重启服务
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

九、squid 正向代理:

实验环境:
单网卡主机设定ip不能上网
双网卡主机设定ip1可以连接单网卡主机,设定ip2可以上网

实验效果
让单网卡主机不能上网但浏览器可以访问互联网页

双网卡主机:
安装squid
在这里插入图片描述
更改配置文件:
/etc/squid/squid.conf
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在单网卡中选择
NetWork Proxy
172.25.254.7 3128
在这里插入图片描述
即可实现没有网络也可以访问互联网:
在这里插入图片描述

十、squid反向代理:

实验环境:
172.25.254.20 ##Apache服务器
172.25.254.30 ##squid,没有数据负责缓存

vim /etc/squid/squid.conf
http_port 80 vhost vport |vhost 支持虚拟域名 vport 支持虚拟端口
#当172.25.254.30的80端口被访问会从172.25.254.20的80端口缓存数据
cache_peer 172.25.254.20 parent 80 0 proxy-only
在这里插入图片描述
在这里插入图片描述
测试:
firefox http:/172.25.254.30
访问看到的是172.25.254.20上的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值