温馨提示×

centos apache2怎样开启https

小樊
46
2026-10-05 22:15:23
栏目: 智能运维

在 CentOS 上,通常使用的是 Apache HTTP Server(httpd),而不是 Ubuntu 中的 apache2。下面以 CentOS 7/8 为例,说明如何开启 HTTPS。


一、安装 Apache(如未安装)

# CentOS 7
yum install httpd mod_ssl -y

# CentOS 8
dnf install httpd mod_ssl -y

mod_ssl 是用于支持 HTTPS 的模块。


二、启动并设置开机自启

systemctl start httpd
systemctl enable httpd

三、准备 SSL 证书

方式 1:使用自签名证书(测试用)

mkdir -p /etc/httpd/ssl
openssl req -x509 -nodes -days 365 \
  -newkey rsa:2048 \
  -keyout /etc/httpd/ssl/server.key \
  -out /etc/httpd/ssl/server.crt

方式 2:使用证书机构证书(生产环境)

将你的:

  • 证书:server.crt
  • 私钥:server.key
  • (可选)中间证书:ca_bundle.crt

放到:

/etc/httpd/ssl/

四、配置 Apache 支持 HTTPS

1. 修改 SSL 配置文件

编辑:

vi /etc/httpd/conf.d/ssl.conf

关键配置示例:

<VirtualHost *:443>
    ServerName www.example.com
    DocumentRoot /var/www/html

    SSLEngine on
    SSLCertificateFile /etc/httpd/ssl/server.crt
    SSLCertificateKeyFile /etc/httpd/ssl/server.key
    # SSLCertificateChainFile /etc/httpd/ssl/ca_bundle.crt
</VirtualHost>

五、开放防火墙端口

# firewalld
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

六、验证配置并重启 Apache

httpd -t
systemctl restart httpd

七、访问测试

浏览器访问:

https://你的服务器IP或域名

八、(可选)HTTP 强制跳转 HTTPS

在 /etc/httpd/conf/httpd.conf 或站点配置中加入:

<VirtualHost *:80>
    ServerName www.example.com
    Redirect permanent / https://www.example.com/
</VirtualHost>

如果你用的是 CentOS Stream / Rocky / AlmaLinux,或想用 Let’s Encrypt 免费证书,我也可以继续帮你写。

0 踩