【Linux-云原生-笔记】Apache相关

一、概念

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服务,和重启火墙,这样才生效

成功

相关推荐
蜡笔小电芯6 分钟前
【STM32】const 变量存储学习笔记
笔记·stm32·学习
金心靖晨1 小时前
笔记-极客-DDD实战-基于DDD的微服务拆分与设计
java·笔记·微服务
Gene_20221 小时前
[TOOL] ubuntu 使用 ffmpeg 操作 gif、mp4
linux·ubuntu·ffmpeg
哈哈浩丶2 小时前
Linux驱动开发2:字符设备驱动
linux·运维·驱动开发
啊森要自信2 小时前
【Linux 学习指南】网络基础概念(一):从协议到分层,看透计算机通信的底层逻辑
linux·运维·服务器·网络·网络协议·tcp/ip·ip
asdfg12589632 小时前
策略路由Policy-Based Routing(PBR)
linux·网络·wireshark·网络工程·策略路由
小坏坏的大世界2 小时前
ROS2中的QoS(Quality of Service)详解
linux·机器人
容器魔方3 小时前
持续领跑,华为云连续5年蝉联中国容器软件市场份额第一
云原生·容器·云计算
Ronin3053 小时前
【Linux系统】进程状态 | 进程优先级
linux·运维·服务器·ubuntu
易知嵌入式小菜鸡3 小时前
CCS-MSPM0G3507-7-模块篇-MPU6050的基本使用
linux·运维·服务器