Apache HTTP Server 的安装与配置

一、概要

1. 环境

(1) Rocky Linux 9.3

二、安装与配置

1. 安装

(1) 安装

bash 复制代码
sudo dnf install httpd -y

(2) 服务

bash 复制代码
sudo systemctl start httpd
sudo systemctl enable httpd
systemctl status httpd

(3) 防火墙

bash 复制代码
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

2. SSL

(1) 安装SSL模块

bash 复制代码
sudo dnf install mod_ssl -y

安装完成之后会在/etc/httpd/conf.d目录下出现一个文件ssl.conf

(2) 为域名设置SSL/TLS

假设我们需要为www.example.com设置SSL/TLS:

a. 创建证书目录

bash 复制代码
sudo mkdir /etc/httpd/certs

b. 准备证书

OpenSSL 系列2 --- 应用

i. CA证书;

ii. 域名证书;

iii. 域名证书密钥;

c. 创建配置文件

bash 复制代码
sudo vi /etc/httpd/certs/www.example.com.conf

d. 初始化配置文件:

bash 复制代码
<VirtualHost *:443>
    ServerName ldapadmin.example.com
    SSLEngine on
    SSLVerifyClient optional
    SSLVerifyDepth 1
    SSLCACertificateFile "/etc/httpd/certs/cacert.pem"
    SSLCertificateFile "/etc/httpd/certs/www.example.com.cert.pem"
    SSLCertificateKeyFile "/etc/httpd/certs/key.pem"
</VirtualHost>

e. 重启服务

bash 复制代码
sudo systemctl restart httpd
systemctl status httpd

3. 强制HTTPS访问

(1) 编辑配置文件

bash 复制代码
sudo vi /etc/httpd/certs/www.example.com.conf

(2) 新增配置:

bash 复制代码
<VirtualHost *:80>
    ServerName www.example.com
    RewriteEngine on
    RewriteCond %{SERVER\_PORT} !^443$
    RewriteRule ^/?(.\*)$ https://%{SERVER\_NAME}/$1 \[L,R\]

    <Directory "${INSTALL\_DIR}/htocs"\>
        Options +Indexes +Includes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

4. 测试配置

bash 复制代码
apachectl configtest

三、引用

1. 官方

https://httpd.apache.org/

https://httpd.apache.org/docs/2.4/en/ssl/ssl_howto.html

转至:https://www.cnblogs.com/eagle6688/p/17891481.html

相关推荐
GitLqr5 小时前
玩转 WebSocket:从原理到 Flutter 实战
websocket·网络协议·flutter
微硬创新7 小时前
耐达讯自动化 CC-Link IE 转 PROFINET网关在污水厂智能化升级实战
人工智能·物联网·网络协议·自动化·信息与通信
TlSfoward12 小时前
抓包代理链路下的 TLS 指纹变化分析 TLSFOWARD抓包工具
数据库·爬虫·网络协议·搜索引擎·php
张小姐的猫13 小时前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
2501_9160074716 小时前
深入理解HTTPS对称与非对称加密机制及Charles抓包实践
网络协议·http·ios·小程序·https·uni-app·iphone
Zhu75817 小时前
在k8s环境部署Apache Superset最新版
容器·kubernetes·apache
2501_9160088917 小时前
HTTPS 抓包遇到证书绑定怎么办,使用 TraceEagle 解除 App 证书校验
网络协议·计算机网络·http·网络安全·ios·adb·https
Zhu75817 小时前
在k8s环境部署Apache zookeeper3.9.5,高可用,多pod
容器·kubernetes·apache
不是光头 强17 小时前
接口性能优化报告
网络协议·性能优化·rpc
treesforest18 小时前
你以为只是一串数字?你的IP地址,正在悄悄暴露这些信息
网络·网络协议·tcp/ip·网络安全·ip归属地查询·ip风控