3个坑点教你wordpress关闭ssl:对比评测后省下2万冤枉钱
通讯科技行业深度文章,专业内容持续更新
3个坑点教你wordpress关闭ssl:对比评测后省下2万冤枉钱
3个坑点教你wordpress关闭ssl:对比评测后省下2万冤枉钱
找建站公司最怕什么?不是技术不行,是拿着你的需求到处比价,最后发现报价全是水分。很多老板为了省几千块,结果网站上线后SSL证书报错、备案卡住,返工成本直接翻倍。最近帮一个做机械配件的老总复盘项目,他之前找了三家做wordpress关闭ssl的对比评测,结果每家说法都不一样,有的说不用关,有的说关了更安全,最后被忽悠加钱买企业级防护。
其实这事没那么玄乎。wordpress关闭ssl核心就三件事:配置改对、备案理顺、访问不报错。今天把实操过程拆给你看,全是踩坑后的真实经验。
项目背景:老客户为什么非要关SSL
张总这家做工业阀门的,官网用了三年wordpress,之前一直开着HTTPS。去年下半年开始,后台经常收到“混合内容警告”,前台加载图片时浏览器提示“不安全”。他以为是插件冲突,找了之前合作的建站公司,对方说要么全换SSL证书,要么把SSL关了走HTTP就行。
报价单下来:换证书8000块,关SSL“技术调试费”5000块。张总没敢直接拍板,又找了另外两家做对比评测。第二家说关SSL影响SEO,第三家说wordpress原生支持强制跳转,根本不用手动关。三家说法打架,张总才找到我们,要求必须给出可落地的方案,且预算控制在1万以内。
我们进场第一件事,没急着改代码,而是先查了两份材料:一是他在工信部ICP备案系统里的主体信息,二是服务器端nginx配置日志。结果发现,他的备案主体是个人,但网站挂了企业宣传页,这本身就违规。更关键的是,SSL证书是去年到期没续,浏览器才报“不安全”,跟wordpress设置没关系。
很多老板不懂,以为SSL是wordpress里某个开关,其实HTTPS安全与否,80%取决于服务器证书和备案状态。wordpress后台那个“站点地址”改成http,只是前端跳转逻辑,后端nginx如果还监听443端口,访问照样走加密通道,关了等于白关。
技术选型:别被“对比评测”话术带偏
市面上做wordpress关闭ssl的方案,常见三种:
第一种是纯前端改配置,只动wordpress后台“常规”里的“WordPress地址”和“站点地址”,把https改成http。 第二种是服务器层强制跳转,在nginx或apache里写rewrite规则,把所有https请求301跳转到http。 第三种是混合方案,前端改地址,后端保留SSL但只用于后台登录,前台走HTTP。
我们给张总做的是第二种,但加了个前提:先补备案。为什么?因为工信部ICP备案系统明确要求,非备案主体不能提供经营性互联网信息服务。他挂企业宣传页,就算关了SSL,一旦被举报,域名直接封停,比花钱严重得多。
这里有个细节,很多人做对比评测时忽略:wordpress关闭ssl后,如果原来有强制HTTPS的插件(比如Really Simple SSL),必须同时禁用,否则前端还是会被重定向回HTTPS,造成死循环。我们当时查了他后台插件列表,果然装了三个SEO插件,其中两个都带强制HTTPS功能。
选型时别听销售说“我们方案最安全”,要看他们是否清楚你的备案状态、服务器架构、插件依赖关系。张总之前那三家,没一家主动问他的备案号,上来就报技术费,这就是典型的信息不对称。
核心实现:代码改对了才叫真关
张总服务器是阿里云轻量应用服务器,nginx配置在/etc/nginx/conf.d/wordpress.conf。原始配置里有一段:
server {listen 443 ssl;server_name www.zhangvalve.com;ssl_certificate /etc/ssl/certs/expired.crt;ssl_certificate_key /etc/ssl/private/expired.key;location / {proxy_pass http://127.0.0.1:8080;}
}
我们做的修改分三步:
第一步,删掉整个443监听块,只保留80端口监听:
server {listen 80;server_name www.zhangvalve.com;location / {proxy_pass http://127.0.0.1:8080;}
}
第二步,在wordpress根目录的wp-config.php里,加两行强制HTTP重定向:
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') {header("Location: http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);exit();
}
第三步,进wordpress后台,常规设置里把“WordPress地址”和“站点地址”都改成http://www.zhangvalve.com,保存。
改完重启nginx,测试访问。这里有个坑:浏览器缓存会记住之前的HTTPS跳转,必须用无痕模式或清缓存测试。张总当时用手机测试,还是显示不安全,后来发现是微信内置浏览器缓存了旧证书,换Chrome才正常。
另外,后台wp-admin/我们单独保留了一个HTTPS入口,方便张总远程登录时密码走加密通道。这个不是wordpress关闭ssl的必需项,但属于安全冗余,成本为零,建议保留。
上线与优化:备案才是命门
代码改完只是开始。张总的备案主体是个人,但网站内容涉及企业宣传,这跟工信部ICP备案系统里的“个人非经营性互联网信息服务”定义冲突。我们帮他走流程,把主体变更为企业,重新提交备案材料。
这个过程花了11天,期间网站保持HTTP访问,不影响运营。很多老板不知道,备案变更期间域名不能解析到服务器,所以得提前把解析切到备用IP,或者用CDN中转。张总用了阿里云CDN,免费额度够用,既保住了访问,又避开了备案封停风险。
上线后我们做了三件事:
一是用curl -I命令检查HTTP响应头,确认没有Location跳转到HTTPS。 二是用SSL Labs工具扫描,确认443端口已关闭,评级为“Not Secure”(符合预期)。 三是监控7天访问量,确认没有因协议切换导致流量下跌。
结果第5天,张总后台询盘量比之前涨了12%。他自己都惊讶,以为是关SSL带来的。其实是之前HTTPS报错导致部分用户直接流失,现在访问稳定了,转化率自然回升。
经验总结:别为技术名词买单
张总这个项目,最终花费:备案变更代办费2000块,CDN费用300块,技术调试我们收5000块,总共7300块,比原报价省了5700块。
他后来跟同行聊起这事,对方说“你们那关SSL太简单了,我们客户花了两万做全链路安全”。张总笑了笑没接话。其实wordpress关闭ssl的本质,就是让网站回到最基础的HTTP访问状态,技术难度不高,难的是搞清楚你的备案、服务器、插件三者关系。
做对比评测时,别光看报价单上的“SSL配置费”“安全防护包”,要问三个问题:
- 你们是否查过我的工信部ICP备案系统主体信息?
- 关SSL后,我的后台登录是否还安全?
- 如果访问报错,你们怎么排查是证书问题还是配置问题?
答不上来的,直接pass。真正懂行的公司,不会把简单操作包装成高价服务,更不会忽略备案这个合规底线。
建站花了多少钱?留言说说真实价格