一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

怎样为 Apache 虚拟主机安装 SSL/TLS 证书

时间:2026-07-15 19:29:52 编辑:袖梨 来源:一聚教程网

Apache虚拟主机SSL证书安装核心是将.crt、.key、root_bundle.crt三文件存至/etc/httpd/conf/ssl/,在<VirtualHost *:443>块中配置SSLEngine on、SSLCertificateFile、SSLCertificateKeyFile和SSLCACertificateFile,并确保443端口开放及语法正确后重启服务。

为 Apache 虚拟主机安装 SSL/TLS 证书,核心是把证书文件放对位置、在正确的配置块里写对三条指令,并确保 443 端口可用。整个过程不依赖外部工具,纯手工配置即可生效。

准备证书文件

从证书颁发机构(如 Let’s Encrypt、DigiCert 或腾讯云)下载 Apache 版本的证书包,解压后通常包含三个关键文件:

  • 域名.crt(如 example.com.crt):服务器证书,即你的站点身份证明
  • 域名.key(如 example.com.key):私钥文件,必须严格保密,权限建议设为 600
  • root_bundle.crt(或 intermediate.crt):中间证书链,用于构建信任链

将这三个文件统一存放到一个目录下,例如 /etc/httpd/conf/ssl/。如果目录不存在,可手动创建:
sudo mkdir -p /etc/httpd/conf/ssl

启用 mod_ssl 模块

确保 Apache 已加载 SSL 支持模块:

  • CentOS/RHEL 系统运行:sudo yum install -y mod_ssl
  • Ubuntu/Debian 系统运行:sudo a2enmod ssl,然后重启 Apache

安装后,/etc/httpd/conf.d/ssl.conf(或 /etc/apache2/mods-available/ssl.conf)会自动生成,无需手动加载 LoadModule ssl_module —— 除非你用的是极简编译版 Apache。

配置虚拟主机启用 HTTPS

在 Apache 主配置(如 /etc/httpd/conf/httpd.conf)或站点专属配置(推荐放在 /etc/httpd/conf.d/example.com.conf)中,添加或修改一个 <VirtualHost *:443> 块:

  • 确认已开启 443 端口监听(检查 httpd.conf 中是否有 Listen 443
  • 填写以下三项必需指令,路径需与你存放证书的实际路径一致:
    SSLEngine on
    SSLCertificateFile /etc/httpd/conf/ssl/example.com.crt
    SSLCertificateKeyFile /etc/httpd/conf/ssl/example.com.key
    SSLCertificateChainFile /etc/httpd/conf/ssl/root_bundle.crt
  • Apache 2.4.8+ 推荐改用 SSLCACertificateFile 替代 SSLCertificateChainFile,效果相同
  • 务必设置 ServerName example.com,并匹配证书所含域名

验证并重启服务

执行两步检查,避免配置错误导致服务启动失败:

  • 语法检测:sudo apachectl configtestsudo apache2ctl configtest,输出 Syntax OK 才继续
  • 重启服务:sudo systemctl restart httpd(CentOS)或 sudo systemctl restart apache2(Ubuntu)
  • 防火墙放行 443 端口:sudo firewall-cmd --permanent --add-port=443/tcp(CentOS)或 sudo ufw allow 443(Ubuntu)

浏览器访问 https://your-domain.com,地址栏出现锁形图标即表示部署成功。

热门栏目