Chrome提示不安全3步让你的网站变成HTTPS

Chrome提示"不安全"?3步让你的网站变成HTTPS

打开自己网站,地址栏赫然一把灰色小锁 + "不安全"三个字------这不是错觉,Chrome 正在告诉每一位访客:这个网站不安全

更扎心的是,不只是 Chrome,Edge、Firefox 都在这么做。HTTP 站点在浏览器眼里就是"二等公民":地址栏标红、搜索排名靠后、部分功能直接禁用。

解决方法只有一个:给网站装上 SSL 证书,开启 HTTPS。听起来可能觉得很复杂,实际上只要 3 步,5 分钟就能搞定。

第1步:申请一张免费SSL证书

SSL 证书不用花钱买。Let's Encrypt 提供完全免费的 SSL 证书,而且没有数量限制。

最简单的方式是通过 乐此云签 在浏览器里完成申请,不需要碰命令行:

  1. 打开 乐此云签,注册并登录

  2. 点击 "申请证书",填写域名

    • 单域名:直接输入 example.com
    • 泛域名:勾选 "泛域名,包含根域" ,一张证书覆盖 *.example.com + example.com(有多个子域名推荐选这个)
  3. 点击 "点击获取验证码",输入验证码后提交申请

  4. 复制平台生成的 DNS 验证信息,去域名 DNS 管理控制台添加一条 CNAME 记录

  5. 回到平台点击 "立即验证",验证通过后证书自动签发

  6. 下载证书,选择你的服务器类型(Nginx/Apache/Tomcat/IIS)

提示:DNS 解析生效通常需要几分钟,验证失败的话等待2-3分钟后重试。

第2步:部署证书到服务器

下载的证书文件需要放到服务器上并配置 Web 服务启用 HTTPS。以下是最常用的 Nginx 配置示例:

Nginx 配置 HTTPS

  1. 将下载的证书文件(.pem.key)上传到服务器,如 /data/nginx/ssl/ 目录

  2. 修改 Nginx 配置,添加 HTTPS server 块:

nginx 复制代码
server {
    listen 443 ssl;
    server_name example.com www.example.com;

    # 证书文件路径
    ssl_certificate     /data/nginx/ssl/example.com.pem;
    ssl_certificate_key /data/nginx/ssl/example.com.key;

    # SSL 优化配置
    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;

    # 网站根目录和其他配置
    location / {
        root /var/www/html;
        index index.html;
    }
}
  1. 测试并重载 Nginx:
bash 复制代码
nginx -t          # 测试配置是否正确
nginx -s reload   # 重载配置
  1. 确保服务器防火墙/安全组放行了 443 端口

Apache 配置 HTTPS

apache 复制代码
<VirtualHost *:443>
    ServerName example.com
    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/example.com.pem
    SSLCertificateKeyFile /etc/apache2/ssl/example.com.key
    # 其他配置...
</VirtualHost>

其他服务器(Tomcat、IIS)的配置方法可参考:Nginx/Tengine 配置 SSLApache 配置 SSLTomcat 安装 SSL

第3步:HTTP自动跳转HTTPS

证书装好了,HTTPS 也能正常访问了,但用户手动输入 http:// 还是会看到"不安全"。最后一步:强制所有 HTTP 请求跳转到 HTTPS

Nginx 跳转配置

在 Nginx 配置中添加一个 HTTP server 块,将所有 80 端口请求 301 跳转到 HTTPS:

nginx 复制代码
server {
    listen 80;
    server_name example.com www.example.com;

    # 强制跳转HTTPS
    return 301 https://$host$request_uri;
}

添加后重载 Nginx:nginx -s reload

Apache 跳转配置

确保 Apache 开启了 mod_rewrite 模块,然后在网站根目录的 .htaccess 中添加:

apache 复制代码
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

IIS 跳转配置

  1. 打开 IIS 管理器,选择站点
  2. 双击 "SSL 设置" → 勾选 "要求 SSL"
  3. web.config 中添加跳转规则:
xml 复制代码
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="HTTP to HTTPS" stopProcessing="true">
          <match url="(.*)" />
          <conditions>
            <add input="{HTTPS}" pattern="^OFF$" />
          </conditions>
          <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

完成!现在访问 http:// 会自动跳转到 https://,浏览器地址栏显示安全小锁。

别忘了:配置自动续期

免费 SSL 证书有效期只有 3 个月,忘续期 = 回到"不安全"。一步到位配置自动续期,从此再也不用操心:

  1. 在乐此云签证书列表中点击 "自动续期"

  2. 填写服务器信息,平台自动生成一键部署脚本

  3. 复制命令到服务器执行一次即可,后续全自动运行

Linux 示例

bash 复制代码
curl -o /usr/bin/letsencrypt-renew https://letsssl.cn/download/letsencrypt-renew
chmod +x /usr/bin/letsencrypt-renew
crontab -l > /etc/crontab && echo '18 4 10,25 * * root /usr/bin/letsencrypt-renew -token=你的Token -key_path=/data/nginx/ssl/example.com.key -server_type=nginx -cert_path=/data/nginx/ssl/example.com.cert -command="systemctl reload nginx" -backup=true ' >> /etc/crontab
crontab /etc/crontab
/usr/bin/letsencrypt-renew -token=你的Token -key_path=/data/nginx/ssl/example.com.key -server_type=nginx -cert_path=/data/nginx/ssl/example.com.cert -command="systemctl reload nginx" -backup=true

配置完成后,系统每15天自动检查一次,到期前自动续期并重载服务,证书永远不过期。

常见问题

Q1:配置完HTTPS后,浏览器还是显示"不安全"?

检查以下几点:

  • 确认证书已正确部署,且没有过期
  • 确认页面中是否还引用了 HTTP 资源(图片、脚本、CSS),即"混合内容"问题。浏览器控制台(F12)会列出具体的 HTTP 资源,将它们改为 HTTPS 或相对路径即可
  • 确认证书的域名和实际访问的域名一致(如证书是 www.example.com,访问的却是 example.com

Q2:HTTPS 配置后网站打不开?

最常见的原因是 443 端口没有放行。去云服务器控制台的安全组/防火墙设置中,确认 443 端口已开放入站规则。

Q3:有必要每个页面都用HTTPS吗?

是的。只要有一个页面还是 HTTP,浏览器就会在地址栏显示"不安全"。现代做法是全站 HTTPS + 强制跳转,让用户无论从哪个入口进来都是安全的。

总结

从"不安全"到安全小锁,就3步:

步骤 操作 耗时
1 申请免费SSL证书 2分钟
2 部署证书到服务器 2分钟
3 HTTP跳转HTTPS 1分钟

加上配置自动续期,5分钟搞定,从此告别"不安全"提示。别让你的网站继续被浏览器标红,现在就动手。


相关阅读

相关推荐
benjiangliu2 小时前
LINUX系统-18-EXT系列文件系统(三)
linux·运维·chrome
2301_815645382 小时前
网络与安全
网络·安全
User_芊芊君子2 小时前
【JavaEE】线程入门:线程基础 + 安全机制一次讲透
java·安全·java-ee
Geometry Fu2 小时前
《物联网安全》第9章 无线网络安全
物联网·安全·web安全
一只鹿鹿鹿2 小时前
网络安全和安防建设方案(doc文件)
大数据·运维·网络·物联网·安全
宋浮檀s2 小时前
春秋云境——CVE-2022-25488
网络·安全·web安全
安协技术部门2 小时前
安全光栅的优缺点:漫反射式VS对射式
安全·制造
网安小学生(兼顾数据库版)2 小时前
从37万事故损失到零事故:Swisscom如何用ONEKEY筑牢固件安全防线
安全
QZ166560951592 小时前
2026年教育行业API安全解决方案综合排名:高性能、可追踪、全流程成为选型关键
网络·安全·web安全