Apache的管理及优化web

本文详细介绍了Apache服务器的安装、启用、配置、访问控制、虚拟主机设置、语言支持(PHP、CGI、WSGI)、加密访问以及与Squid的结合使用。通过实例演示了如何修改端口、默认发布文件、目录,实现基于IP和用户认证的访问控制,以及正向和反向代理配置。此外,还涵盖了Apache的SSL加密和Squid作为正向、反向代理的设置,以增强服务器的安全性和性能。
摘要由CSDN通过智能技术生成


前言

本章我们主要介绍了Apache的作用、安装、如何使用、配置相关文件、访问控制、Apache的虚拟主机、语言支持以及加密访问。


一、Apache的安装与启用

  • http:// 超文本传输协议
    安装:dnf install httpd -y
    在这里插入图片描述启用httpd服务
    firewall-cmd --permanent --add-service=http 在火墙中添加http服务
    在这里插入图片描述firewall-cmd --reload reload火墙(刷新火墙)
    在这里插入图片描述firewall-cmd --list-all 查看火墙信息
    在这里插入图片描述可以看到火墙支持的服务李添加了http。
systemctl restart httpd 	重启httpd服务

打开网友输入本机ip即可进入共享页面。
在这里插入图片描述


二、基本信息

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

三、基本配置

1.端口修改

打开主配置文件,修改端口为8080
在这里插入图片描述firewall-cmd --permanent --add-port=8080/tcp 添加端口到火墙
在这里插入图片描述刷新火墙,重启服务
在这里插入图片描述网页进入
http://172.25.254.139:8080
在这里插入图片描述注:修改完端口后记得改回,避免影响后续实验。
若发现重启httpd服务时间较长,可添加本地解析/etc/hosts/
在这里插入图片描述

2.默认发布文件修改

进入主配置文件,默认发布文件为index.html 添加新文件westos.html
在这里插入图片描述编辑index.html和westos.html进行对比,重启服务
在这里插入图片描述已将默认发布文件修改为westos.html

3.默认发布目录修改

创建新的发布目录,由于文件安全上下文的关系,我们将新目录先在/etc/www/下创建 ,再将其移到/var/下
在这里插入图片描述修改主配置文件vim /etc/httpd/conf/httpd.conf
在这里插入图片描述重启服务,打开网页进行测试
在这里插入图片描述打开成功,即可证明发布目录修改成功,试验成功记得改回原配置。


四、Apache的访问控制

建立实验素材
在这里插入图片描述在这里插入图片描述

1.基于ip的访问控制

黑名单:
打开主配置文件,
在这里插入图片描述此修改项表示,先读取allow,再读取deny,即为黑名单。
重新访问,访问被拒绝
在这里插入图片描述白名单:
在这里插入图片描述表示只有39ip的主机允许访问。
在这里插入图片描述使用其他主机进行访问:
curl http://172.25.254.139/westos
在这里插入图片描述访问被拒绝。

2.基于用户认证

首先进入/etc/httpd/

htpasswd -cm .htpasswd admin 生成认证文件

在这里插入图片描述在这里插入图片描述
按图要求改好配置文件,允许hyl用户进入,重启服务。
在这里插入图片描述

打开网页测试,输入hyl和密码访问被允许,输入其他用户访问被拒绝
在这里插入图片描述
在这里插入图片描述


五、Apache的虚拟主机

先建立测试页
mkdir -p /var/www/vhost/{linux,java,python}
在这里插入图片描述进入子配置文件目录,编写 vhost.conf
在这里插入图片描述测试客户端主机:
vim /etc/hosts 编写本地解析
在这里插入图片描述打开网页输入www.westos.org linux.westos.org java.westos.org python.westos.org
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述


六、Apache的语言支持

1.php

首先,下载php到主机中
在这里插入图片描述php -m 可查看php支持的服务
编写php测试页面index.php
在这里插入图片描述重启服务,进入网页进行测试
在这里插入图片描述

2.cgi

编写cgi测试页面 index.cgi
在这里插入图片描述vim vhost.conf 编辑子配置文件

/etc/httpd/conf.d/vhost.conf

将selinux设置为警告
在这里插入图片描述chmod +x /var/www/html/index.cgi 修改被执行文件权限
重启服务进入网页测试
在这里插入图片描述

3.wsgi

编写测试页index.wsgi
在这里插入图片描述vim /etc/httpd/conf.d/vhost.conf apache虚拟主机配置
在这里插入图片描述

dnf install python3-mod_wsgi.x86_64 -y 下载插件
在这里插入图片描述重启服务

客户端测试机:
vim /etc/hosts
在这里插入图片描述
网页输入http://wsgi.westos.org/
在这里插入图片描述


七、加密访问Apache

基本原理:证书,锁,钥匙
Apache的加密访问中有证书,锁和钥匙。在Apache加密访问中,客户先向服务下载获取证书、锁,通过证书确定这个锁是否配对,若配对,则使用锁将信息加密传输到网页中,再通过Apache中的钥匙来打开相应的锁以实现加密访问,中间环节有一处不配对,则访问被拒绝。

dnf install mod_ssl -y 下载插件,可观察下载前后,/etc/pki/tls/certs 变化
在这里插入图片描述firewall-cmd --permanent --add-service=https 火墙打开https端口
firewall-cmd --reload
重启服务 进入网页https://172.25.254.139查看
在这里插入图片描述

生成证书:

openssl req --newkey rsa:2048 -nodes -sha256 -keyout /etc/httpd/westos.org.key -x509 -days 365 -out /etc/httpd/westos.org.crt

其中-req 请求
x509 证书格式
rsa: 证书大小
在这里插入图片描述按提示填写信息,然后生成证书。
编辑子配置文件vhost.conf
在这里插入图片描述加密访问认证信息配置,并将80端口的访问转到443端口,保证加密作用。
重启服务。
测试客户端主机:
vim /etc/hosts
网页输入login.westos.org
在这里插入图片描述


八、Squid与Apache

1.正向代理

实验素材为两台虚拟机,一台可上网,一台不可上网。

可上网主机:squid下载,
在这里插入图片描述修改主评为配置文件,rpm -qc suqid 查找主配置文件目录
在这里插入图片描述修改相应位置,此文件为后部分文字会覆盖前部分文字内容,所以在后面部分进行修改
在这里插入图片描述
修改完后记得将squid服务重启。

开启服务,关火墙
在这里插入图片描述

首先保证真机能上网,将需要上网的虚拟机网关配置为真机ip
firewall-cmd --add-masquerade 139即可上网
真机:
在这里插入图片描述可上网虚拟机:
在这里插入图片描述

不可上网主机:下载浏览器,
在这里插入图片描述

进入浏览器进行配置setting---->Preferences---->general---->network setting---->manual---->添加ip 和3128端口
在这里插入图片描述在这里插入图片描述红框部分均为要修改的部分,修改完成后保存退出,在网页输入www.baidu.com
在这里插入图片描述

配置完成进入百度成功,此时仍然ping不通www.baidu.com
在这里插入图片描述

实质上是通过squid服务在139主机进行访问。即139主机关闭squid服务后,239主机上网功能停止.

2.反向代理

CDN加速机制原理:
企业端通过增加用户本地代理服务器来进行三重加速访问,1用户与本地服务器的加速,2本地服务器与总服务器加速,3缓解总服务器访问访问压力进而加快反应速度。

实验需要两台主机,一台模拟本地服务器,一台模拟远程总服务器。

本地服务主机:139
修改squid配置文件,
在这里插入图片描述

端口修改为80 vhost vport
接受来自父辈239的资源缓存,可参考/usr/share/doc/squid/squid.conf ----> cache

卸载apache
在这里插入图片描述重启squid服务,关闭火墙
在这里插入图片描述

主服务虚拟机:239

安装apache,
在这里插入图片描述

开启httpd服务,编辑测试页码,关闭火墙
在这里插入图片描述

测试结果:主机139 打开网页输入172.25.254.139 ----> 可以看到来自239端的测试页
在这里插入图片描述


总结

学习本章之后,要对Apache有足够的了解,对Apache的管理及优化操作要熟练。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值