久诚SSL

SSL证书申请下来后,如何在Nginx/Apache上配置部署?

SSL证书申请成功后,在 Nginx 和 Apache 服务器上的配置部署步骤有所不同。以下是基于主流环境的详细部署指南:

一、 Nginx 服务器部署步骤

  1. 准备与上传证书文件
    在 Nginx 安装目录下创建专门的 cert 或 ssl 目录(如 /etc/nginx/ssl/)。
    将下载的证书文件(.pem 或 .crt)、私钥文件(.key)以及中间证书文件(.ca-bundle 或 _ca.crt)上传至该目录中。
  2. 修改 Nginx 配置文件
    打开 Nginx 主配置文件(通常为 /etc/nginx/nginx.conf 或 /etc/nginx/sites-available/ 下的站点配置文件)。
    找到或添加 HTTPS 的 server 块,配置如下:

     server {
     listen 443 ssl;
     server_name yourdomain.com; # 替换为您的实际域名
     
     # 配置证书路径
     ssl_certificate /etc/nginx/ssl/yourdomain.pem;
     ssl_certificate_key /etc/nginx/ssl/yourdomain.key;
     
     # 推荐的安全与性能配置
     ssl_protocols TLSv1.2 TLSv1.3;
     ssl_ciphers HIGH:!aNULL:!MD5;
     ssl_prefer_server_ciphers on;
     ssl_session_cache shared:SSL:10m;
     ssl_session_timeout 10m;
     
     # 网站根目录及其他配置...
     root /var/www/html;
     index index.html;

    }

  3. 配置 HTTP 自动跳转 HTTPS
    在配置文件中添加一个 80 端口的 server 块,将所有 HTTP 请求重定向到 HTTPS:
    server {
    listen 80;
    server_name yourdomain.com;
    return 301 https://hostrequest_uri;
    }
  4. 验证并重载配置
    执行 sudo nginx -t 检查配置文件语法是否正确。
    确认无误后,执行 sudo systemctl reload nginx 重载配置使证书生效。

二、 Apache 服务器部署步骤

  1. 启用 SSL 模块
    确认 mod_ssl 模块已启用。在 CentOS/RHEL 系统上,需确保 httpd.conf 中 LoadModule ssl_module modules/mod_ssl.so 前的 # 已删除;在 Ubuntu/Debian 系统上,可执行 sudo a2enmod ssl 启用。
    确认配置文件中已添加 Listen 443 监听端口。
  2. 准备与上传证书文件
    在 Apache 目录下创建安全的 cert 或 ssl 目录(如 /etc/httpd/ssl/)。
    上传证书文件(.crt 或 .pem)、私钥文件(.key)和证书链文件(.ca-bundle 或 _chain.crt)。
    安全建议:将私钥文件权限设置为 600,且不要将其放在 Web 可访问路径(如 /var/www/html)下。
  3. 修改虚拟主机配置文件
    打开 SSL 配置文件(如 /etc/httpd/conf.d/ssl.conf 或 /etc/apache2/sites-available/default-ssl.conf)。
    修改或添加 块:

     <VirtualHost *:443>
     ServerName yourdomain.com
     DocumentRoot /var/www/html
     
     SSLEngine on
     SSLCertificateFile /etc/httpd/ssl/yourdomain.crt
     SSLCertificateKeyFile /etc/httpd/ssl/yourdomain.key
     SSLCertificateChainFile /etc/httpd/ssl/yourdomain_chain.crt
     
     # 推荐的安全配置
     SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
     SSLCipherSuite HIGH:!aNULL:!MD5

  4. 验证并重载配置
    执行 sudo apachectl configtest 或 sudo httpd -t 检查语法,确保返回 Syntax OK。
    执行 sudo systemctl restart httpd(CentOS/RHEL)或 sudo systemctl restart apache2(Ubuntu/Debian)使配置生效。

三、 部署后验证与注意事项

浏览器验证:在浏览器中访问 https://yourdomain.com,若地址栏出现锁形图标,说明证书部署成功。
开放端口:务必检查服务器防火墙及云平台的安全组规则,确保 443 端口 已对公网开放,否则 HTTPS 请求会被拦截。
解决混合内容报错:若证书部署成功但浏览器仍提示“不安全”,请检查网页中的图片、脚本、CSS等资源链接是否仍在使用 HTTP 协议,需将其统一替换为 HTTPS。

当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »