如何搭建https网站
如何搭建HTTPS网站
我上个月刚把一个客户的何搭老网站从HTTP迁到HTTPS,整个过程花了不到两小时,网站但客户之前被“证书”两个字吓了半年。何搭其实真没多复杂——HTTPS就是网站给网站加一层加密,核心就三步:买证书、何搭配服务器、网站改链接。何搭
第一步:搞到证书
证书分三类:付费的网站、免费的何搭、自己签的网站。自己签的何搭浏览器会报警,直接排除。网站付费的何搭(比如DigiCert)适合银行或大企业,一年几千块,网站普通人用不上。何搭免费的用Let's Encrypt就够了,全球最大,连GitHub都在用。它提供90天有效期的证书,但可以通过脚本自动续期,你根本不用管。
具体操作:登录服务器,装个Certbot工具,跑一条命令certbot --nginx,它会自动检测你的域名、签发证书、改好Nginx配置。全程大概五分钟。注意,域名得先解析到服务器IP,而且80端口要开放,否则验证过不了。
第二步:配置服务器
如果你用的是Nginx,Certbot改完配置后,你还要手动检查一下。打开站点配置文件,里面应该多出几行:listen 443 ssl;和证书路径。关键一步是加个跳转——把HTTP的80端口请求全部301到HTTPS,这样用户访问老链接也能自动跳转。
我用的是Apache?那也简单,Certbot同样支持。但如果你用的宝塔面板这类图形界面,直接在网站设置里点“SSL”按钮,选Let's Encrypt,填个邮箱就完事。别被技术文档吓住,多数主机商都提供一键HTTPS功能。
第三步:改网站内部链接
证书配好只是开始。我最常遇到的问题是:网站里还写死了大量HTTP链接。比如图片地址、CSS文件、外部API调用。浏览器地址栏显示小锁,但页面里混着HTTP资源,照样会被标记为“不安全”。
最笨但有效的方法:在数据库里执行一条SQL语句,把所有http://你的域名替换成https://你的域名。但如果网站有第三方接口(比如支付回调),你得去后台改配置。WordPress用户直接装个“Really Simple SSL”插件,它自动处理大部分链接替换,还能强制开启HSTS。
验证和坑
配完用浏览器无痕模式访问,看地址栏有没有锁。再用curl -I https://你的域名检查返回状态码,200就正常。有个坑:如果服务器时间不准,证书验证会失败,记得同步时间ntpdate ntp.aliyun.com。另外,CDN(比如Cloudflare)的证书是独立管理的,你得在CDN后台单独配置,不能只改源站。
上个月那个客户,迁移后第二天Google Search Console报错“页面已索引但被降级”,原因是证书链没配全。解决办法:在Nginx配置里加上ssl_trusted_certificate指向中间证书。Certbot生成的fullchain.pem里已包含,直接引用即可。
说到底,HTTPS不是锦上添花,是底线。Chrome浏览器从2018年起就把所有HTTP页面标记为“不安全”,搜索引擎也把HTTPS作为排名信号。你花两小时搭好,换来的是用户信任和SEO优势,这笔账怎么算都划算。动手吧,别等浏览器帮你“强制升级”。