WordPress是全球使用最广的网站开发平台,而SSL证书是网站升级https的最流行解决方案。因此越来越来站长在WordPress潜入SSL证书,也正因为这样,不少站长在部署SSL证书时遇到SSL错误。下面是信孚科技通过整理列出的几个常见WordPress的SSL错误。
此错误消息显示在Google Chrome中。其他浏览器显示此错误的消息略有不同,但基本上都是警告用户网站连接不安全。
此错误消息表示用户的浏览器不接受网站提供的证书,这可能由于以下原因:
SSL证书将颁发给其他域名或子域。
证书已过期。
浏览器无法识别证书颁发机构。
如果是购买的SSL证书,可以要求服务器提供商安装,也可以联系他们来修复。如果是手动安装的SSL证书,请尝试重新安装或联系SSL证书提供商获取支持。
混合内容错误是由仍使用URL中的不安全HTTP协议加载的源(图像,脚本或样式表)引起的。如果出现这种情况,网站在地址栏中不会显示安全小绿锁图标。
有两种方法可以修复WordPress中没有全站开启SSL / HTTPS错误:
1、使用插件修复
使用插件很容易,建议初学者使用。安装并激活Really Simple SSL插件即可。
启用插件后访问 设置 » SSL 页面以查看插件设置,启用插件后会自动处理SSL / HTTPS设置并修复没有全站启用HTTPS的链接。
注意:插件使用输出缓存技术来修复混合内容错误,这会影响网站的表现。但如果使用了缓存插件,它只会影响第一次加载速度。
2、手动修复
此方法需要手动排除故障,但更有效,性能更好。
WordPress允许通过在wp-config.php文件中输入以下行来为管理区域强制执行SSL / HTTPS 。
define(‘FORCE_SSL_ADMIN’, true);
但是,在某些情况下此设置会导致“ 重定向太多 ”错误。要解决这个问题,需要将以下代码添加到wp-config.php文件中,位置在‘That’s all, stop editing! Happy blogging。’
define(‘FORCE_SSL_ADMIN’, true);
// in some setups HTTP_X_FORWARDED_PROTO might contain
// a comma-separated list e.g. http,https
// so check for https existence
if (strpos($_SERVER[‘HTTP_X_FORWARDED_PROTO’], ‘https’) !== false)
$_SERVER[‘HTTPS’]=’on’;
WordPress不会自动将HTTP请求重定向到HTTPS。如果使用的是像Really Simple SSL这样的插件,那么它会处理重定向。否则,必须手动设置重定向。
要将HTTP设置为HTTPS重定向,需要将以下代码添加到.htaccess文件中:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
总结:
并不是所有的WordPress都选择同一种的SSL证书,WordPress用户在选择SSL证书一定要根据自己的站点特性选择合适的SSL证书,选择全球认可的CA机构,以此避免因为SSL证书的问题而导致各种SSL报错。