一、概念
Apache(全称Apache HTTP Server)是全球最流行的开源Web服务器软件之一,由Apache软件基金会(ASF)维护。其核心功能是在网络服务器与客户端(如浏览器)之间建立连接,处理HTTP请求并传输网页内容(如HTML、图像、视频等)
二、步骤
1、Apache的基本信息
- /etc/httpd/conf —— apache的配置目录
- /etc/http/conf.d —— 子配置目录
- /etc/httpd/conf/httpd.conf —— 主配置文件
- /lib/systemd/system/htpd.service —— 启动文件
- :80 —— 默认端口
- /var/www/html —— 默认发布目录
- index.html —— 默认发布文件
2、Apache安装
(1)dnf安装Apache
dnf install httpd -y
Complete即完成
(2)火墙放行web服务
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
(3)开启服务
systemctl enable --now httpd
(4)生成默认测试页文件
echo 172.25.254.100 > /var/www/html/index.html
这里博主将自己的ip地址写进那个默认共享文件里了
(5)测试
成功
3、Apache的基本配置信息
这里的修改都只是演示而已,到时候都要修改回来的,而且所有的修改都是建立在复制原文件的内容上!!!
(1)端口修改
修改配置文件
vim /etc/httpd/conf/httpd.conf
端口改成8080
wq
刷新服务
systemctl reload httpd
设定火墙通过
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --reload
检测
netstat -antlupe | grep httpd
访问
curl 172.25.254.100:8080
(2)修改默认发布目录
建立默认发布目录
mkdir /web/html -p
修改配置文件
vim /etc/httpd/conf/httpd.conf
重启
systemctl restart httpd
写入内容并测试
echo "/web/html's page" > /web/html/index.html
curl 172.25.254.100:8080
如果测试时跳出乱码,那可能是SELinux没关,关一下就可以了:
访问成功
(3)修改默认发布文件
建立新的默认发布文件
echo "/web/html/lee's page" > /web/html/lee.html
当没有对配置进行修改时新默认发布文件不会被默认访问

修改配置文件
vim /etc/httpd/conf/httpd.conf
重启服务
systemctl reload httpd
测试
可以看到默认访问是lee.html了,成功
注意:如果跟着博主演示改的,则要全部改回原来的内容!!!不然后边的测试会报错!
4、https
(1)安装mod_ssl
dnf install mod_ssl -y
(2)建立证书和key文件目录
mkdir /etc/httpd/certs
(3)制作证书
openssl req -newkey rsa:2048 -nodes -sha256 -keyout /etc/httpd/certs/lincoln.org.key -x509 -days 365 -out /etc/httpd/certs/lincoln.org.crt
反斜杠\ 是换行
出现这个这个就完成:
然后输入各种要求的东西:
有国家、省份、城市、公司名、服务名、域名、邮箱(不用按照博主的来写)
(4)命令执行,证书即可出现
ls /etc/httpd/certs/
证书就出现了
(5)编辑主配置文件
vim /etc/httpd/conf.d/ssl.conf
wq
(6)重启服务
systemctl reload httpd
(7)在浏览器中访问(虚拟机Linux的)
博主这里的虚拟机没安装图形界面,所以浏览效果不是很好,如果用Linux自带的Firefox浏览器浏览的话会显示危险连接,这是因为我们刚刚建立的证书没有通过官方认证,所以浏览器会显示不安全,在那个界面点击高级按钮,继续访问就能出内容了
5、Apache的虚拟主机
(1)为每个发布站点建立默认发布目录
mkdir -p /var/www/virtual/lincoln.org/news
mkdir -p /var/www/virtual/lincoln.org/bbs
(2)为每个站点建立默认发布文件
echo new.lincoln.org > /var/www/virtual/lincoln.org/news/index.html
echo bbs.lincoln.org > /var/www/virtual/lincoln.org/bbs/index.html
(3)修改配置文件
vim /etc/httpd/conf.d/vhosts.conf
结尾一定是.conf!
wq
(4)刷新服务
systemctl reload httpd
(5)在浏览器所在主机中手动编写本地解析文件,加入虚拟机解析域名
vim /etc/hosts
将我们自己创建的域名放进去,就算解析了
wq
(6)测试效果
先把之前演示的所有改动全部都改回原样,之前的复制粘贴就有用了
改完后记得重启httpd服务,和重启火墙,这样才生效
成功