15%

全场主机优惠15%

测试技能,享折扣

使用代码:

Skills
开始使用
31.10.2024

如何在您的主机上安装 SSL 证书:完整分步指南

使用SSL证书保护您的网站不再是可选的——它是任何严肃在线业务的基本要求。SSL(安全套接字层)加密您的网络服务器和访问者之间交换的数据,保护登录凭证、支付详情和个人数据等敏感信息免遭拦截。除了安全性,SSL直接影响您的SEO性能:Google已确认HTTPS是排名信号,这意味着未加密的网站在搜索结果中会受到主动处罚。

本综合指南将引导您完成SSL安装的每个阶段——从选择正确的证书类型到强制HTTPS和解决混合内容问题——确保您的网站保持安全、受信任和具有竞争力。

什么是SSL证书,为什么重要?

SSL证书是一个小型数字文件,将密钥密码绑定到您的组织详情。安装在网络服务器上后,它会激活浏览器地址栏中的挂锁图标并启用HTTPS协议。没有它,Chrome和Firefox等现代浏览器会将您的网站标记为”不安全”,立即削弱访问者信任和转化率。

安装SSL的主要好处包括:

  • 数据加密:服务器和浏览器之间的所有通信都经过加密,第三方无法读取。
  • 身份验证:访问者可以验证他们正在与合法网站通信,而不是冒充者。
  • SEO优势:Google在有机搜索排名中优先考虑HTTPS网站。
  • 合规性:许多数据保护法规(GDPR、PCI-DSS)要求加密数据传输。
  • 用户信任:挂锁图标增加信心,特别是在电子商务和登录页面上。

如果您还没有保护您的托管环境,请探索AlexHost的SSL证书,获得与所有主要托管计划兼容的经济实惠选项。

第1步:选择适合您需求的正确SSL证书

并非所有SSL证书都相同。选择适当的类型取决于您网站的目的、受众和您需要建立的信任级别。

域名验证(DV)SSL

  • 验证级别:仅确认您控制该域名。
  • 颁发时间:几分钟到几小时。
  • 最适合:个人博客、小型信息网站和开发环境。
  • 示例提供商:Let’s Encrypt(免费)、Comodo、Sectigo。

组织验证(OV)SSL

  • 验证级别:验证域名所有权*并*确认您的组织存在。
  • 颁发时间:1-3个工作日。
  • 最适合:商业网站、公司门户和专业服务提供商。
  • 信任指标:组织名称在证书详情中可见。

扩展验证(EV)SSL

  • 验证级别:最高可用——需要对法律、物理和运营存在进行严格审查。
  • 颁发时间:3-7个工作日。
  • 最适合:电子商务商店、金融机构、医疗保健平台。
  • 信任指标:公司名称在浏览器栏中突出显示(在支持的浏览器中)。

通配符和多域名SSL

  • 通配符SSL:保护主域名及其所有子域名(例如,*.example.com)。
  • 多域名(SAN)SSL:在单个证书下保护多个不同的域名。

> 专业提示:如果您运营商业网站并希望获得最大可信度,OV或EV证书值得投资。对于个人项目或暂存环境,Let’s Encrypt DV证书完全足够且完全免费。

第2步:生成证书签名请求(CSR)

证书签名请求(CSR)是包含有关您的域名和组织信息的编码文本块。您将其提交给您的SSL证书颁发机构(CA),该机构使用它来创建您的证书。

如何在cPanel中生成CSR

  1. 登录您的托管控制面板(cPanel、Plesk、DirectAdmin或自定义面板)。
  2. 导航到安全 → SSL/TLS
  3. 点击证书签名请求(CSR)
  4. 填写必填字段:
字段描述示例
域名要保护的域名example.com
城市您的组织所在城市San Francisco
州/省您的州或省California
国家两字母ISO国家代码US
公司法律组织名称Example Corp
公司部门部门(可选)IT
电子邮件管理员联系电子邮件admin@example.com
密码短语可选安全密码短语在大多数情况下留空
  1. 点击生成保存CSR和私钥——您稍后会需要它们。

如何通过命令行生成CSR(Linux服务器)

对于管理VPS或专用服务器的管理员,通过OpenSSL生成CSR可以让您完全控制:

openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr

系统会提示您以交互方式输入您的组织详情。完成后,您将拥有两个文件:

  • example.com.key — 您的私钥(保持安全,永远不要分享)。
  • example.com.csr — 您要提交给证书颁发机构的CSR。

> 安全警告:永远不要与任何人分享您的私钥文件,包括您的SSL提供商。只有CSR才能在外部提交。

第3步:获取您的SSL证书

选项A:购买商业SSL证书

  1. 访问您选择的SSL提供商(Comodo、DigiCert、Sectigo、GlobalSign等)。
  2. 选择您的证书类型并将您的CSR粘贴到订单表单中。
  3. 完成域名验证(如果适用,还要完成组织验证)。
  4. 下载颁发的证书文件——通常是一个.crt文件和一个中间/链证书包(.ca-bundle或.pem)。

选项B:通过Let’s Encrypt获取免费SSL证书

Let’s Encrypt是一个免费、自动化和开放的证书颁发机构,受所有主要浏览器信任。大多数现代托管控制面板本地集成Let’s Encrypt。

在cPanel中:

  1. 转到安全 → SSL/TLS状态
  2. 选择您的域名并点击运行AutoSSL
  3. cPanel将自动颁发和安装Let’s Encrypt证书。

通过Linux上的Certbot(VPS/专用服务器):

sudo certbot certonly --standalone -d example.com -d www.example.com

Certbot将自动配置您的网络服务器并设置自动续期。

第4步:在您的托管上安装SSL证书

通过cPanel安装SSL

  1. 登录cPanel并导航到安全 → SSL/TLS
  2. 在*为您的网站安装和管理SSL(HTTPS)*部分下点击管理SSL网站
  3. 从下拉菜单中选择您的域名。
  4. 将您的证书文件的内容粘贴到相应的字段中:
  • 证书(CRT):粘贴您的.crt文件的内容。
  • 私钥(KEY):粘贴您的.key文件的内容。
  • 证书颁发机构包(CABUNDLE):粘贴中间证书链。
  1. 点击安装证书

如果您使用带cPanel的VPS,此过程相同且完全支持。

通过Plesk安装SSL

  1. 登录Plesk并转到网站和域名
  2. 选择您的域名并点击SSL/TLS证书
  3. 点击添加SSL/TLS证书
  4. 输入证书名称,粘贴您的CSR和私钥,然后点击请求
  5. 证书颁发后,返回此部分,选择证书,然后点击安装

在Apache上安装SSL(手动安装)

对于直接管理Apache的VPS或专用服务器用户:

  1. 将您的证书文件上传到服务器(例如,/etc/ssl/certs/example.com.crt用于证书,/etc/ssl/private/example.com.key用于密钥)。
  1. 编辑您的Apache虚拟主机配置:
<VirtualHost *:443>
    ServerName example.com
    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/example.com.crt
    SSLCertificateKeyFile /etc/ssl/private/example.com.key
    SSLCertificateChainFile /etc/ssl/certs/example.com.ca-bundle
</VirtualHost>
  1. 启用SSL模块并重启Apache:
sudo a2enmod ssl
sudo systemctl restart apache2

在Nginx上安装SSL(手动安装)

对于专用服务器或VPS上的Nginx服务器:

  1. 将您的证书和中间链合并为单个文件:
cat example.com.crt example.com.ca-bundle > example.com.combined.crt
  1. 编辑您的Nginx服务器块配置:
server {
    listen 443 ssl http2;
    server_name example.com www.example.com;
    ssl_certificate /etc/ssl/certs/example.com.combined.crt;
    ssl_certificate_key /etc/ssl/private/example.com.key;
}
  1. 测试配置并重新加载Nginx:
sudo nginx -t
sudo systemctl reload nginx

第5步:验证SSL安装

安装后,在向用户宣布更改之前,确认您的证书已正确部署。

浏览器验证

  1. 在浏览器中使用https://example.com打开您的网站。
  2. 点击地址栏中的挂锁图标
  3. 选择证书(或*连接是安全的 → 证书有效*)。
  4. 验证:
  • 域名与您的网站匹配。
  • 证书由受信任的CA颁发。
  • 过期日期正确。

在线SSL检查工具

使用这些免费工具进行全面的技术审计:

工具URL检查内容
SSL Labsssllabs.com/ssltest/完整的TLS配置、密码强度、协议支持
SSL Shoppersslshopper.com/ssl-checker/证书链、过期、主机名匹配
Why No Padlockwhynopadlock.com混合内容问题
DigiCert SSL检查器digicert.com/help/安装完整性

SSL Labs上的A或A+等级表示配置优秀。

第6步:强制HTTPS——将所有HTTP流量重定向到HTTPS

安装SSL不会自动将访问者从http://example.com重定向到https://example.com。您必须配置服务器端重定向以普遍强制HTTPS。

方法1:Apache .htaccess重定向

将以下内容添加到网站根目录中的.htaccess文件:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

方法2:Nginx服务器块重定向

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://$server_name$request_uri;
}

方法3:WordPress网站

对于WordPress,通过多个层更新您的URL并强制HTTPS:

  1. 更新WordPress URL:
  • 转到设置 → 常规
  • 将*WordPress地址(URL)*和*网站地址(URL)*从http://example.com更改为https://example.com。
  • 点击保存更改
  1. 使用插件:
  • 安装Really Simple SSL——它自动检测您的SSL证书并通过一次点击配置HTTPS重定向。
  • 或者,使用WP Force SSL以获得更精细的控制。
  1. 更新wp-config.php(对于高级用户):
define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false) {
    $_SERVER['HTTPS'] = 'on';
}

第7步:修复混合内容问题

当HTTPS页面加载资源(图像、脚本、样式表、iframe)时会发生混合内容。这会破坏挂锁图标并触发浏览器安全警告,削弱SSL应该建立的信任。

识别混合内容

  • 浏览器DevTools:打开Chrome DevTools(F12)→ 控制台选项卡。混合内容警告显示为黄色或红色警报。
  • Why No Padlock:在whynopadlock.com输入您的URL以获取详细报告。
  • SSL Labs:完整报告标记混合内容问题。

修复混合内容

1. 更新HTML/模板中的硬编码HTTP链接:

搜索您的主题文件、模板和HTML中的http://并替换为https://。

2. 更新数据库URL(WordPress):

使用Better Search Replace插件或运行此WP-CLI命令:

wp search-replace 'http://example.com' 'https://example.com' --all-tables

3. 使用内容安全策略(CSP)升级指令:

将此添加到您的服务器配置或.htaccess以自动升级不安全请求:

Header set Content-Security-Policy "upgrade-insecure-requests"

4. 修复第三方资源:

对于外部资源(字体、脚本、分析),确保您通过其HTTPS URL加载它们。大多数主要CDN和服务本地支持HTTPS。

第8步:实施HTTP严格传输安全(HSTS)

一旦您确信您的HTTPS设置正常工作,实施HSTS以指示浏览器*始终*为您的域使用HTTPS——即使用户手动输入http://example.com。

Apache:

Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

Nginx:

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

> 注意:仅在您完全致力于HTTPS后启用HSTS。在HSTS处于活动状态时恢复到HTTP将使浏览器缓存了HSTS策略的用户无法访问您的网站。

稳定后,在hstspreload.org提交您的域名到HSTS预加载列表以获得最大保护。

第9步:SSL证书续期和持续维护

SSL证书不是一次性设置。它们需要主动监控和及时续期以避免服务中断。

续期时间表

证书类型有效期续期建议
Let’s Encrypt90天使用Certbot cron作业自动化
商业DV/OV/EV1-2年在过期前30天续期

自动化Let’s Encrypt续期

Certbot自动安装cron作业或systemd计时器。验证它是否处于活动状态:

sudo systemctl status certbot.timer

SSL监控最佳实践

  • 设置日历提醒在您的证书过期前30天和60天。
  • 使用监控工具如UptimeRobot或StatusCake,它们提供SSL过期警报。
  • 定期检查证书状态通过SSL Labs或您的托管控制面板。
  • 监控证书透明度日志在crt.sh以检测为您的域名颁发的未授权证书。

为SSL支持选择正确的托管

SSL安装和管理的便利性在很大程度上取决于您的托管环境。以下是快速比较:

托管类型SSL管理最适合
共享托管通过控制面板自动化(AutoSSL)小型网站、初学者
VPS托管完整的手动或基于面板的控制成长中的企业、开发人员
专用服务器完整控制、自定义配置高流量、企业网站

AlexHost在所有托管层级上提供SSL支持:

  • 共享网络托管——非常适合个人网站和小型企业,具有自动Let’s Encrypt集成。
  • VPS托管——完整的root访问权限用于自定义SSL配置,非常适合开发人员和成长中的应用程序。
  • 专用服务器——企业级SSL管理,具有完整的服务器控制。
  • VPS控制面板——通过您的VPS上的直观图形界面管理SSL证书。

关于SSL安装的常见问题

问:迁移我的网站后需要重新安装SSL吗?

15%

全场主机优惠15%

测试技能,享折扣

使用代码:

Skills
开始使用