如何修复WordPress中的常见SSL问题(初学者指南)
将WordPress网站移动到SSL有时会导致意外问题。如果您要将SSL添加到现有的WordPress网站并且遇到错误,那么您很幸运。在本指南中,我们将介绍如何解决WordPress中SSL / HTTPs最常见的问题。
什么是SSL / HTTPS以及为什么要立即开始使用它?
SSL / HTTPS是一种加密方法,可以保护用户浏览器和WordPress托管服务器之间的连接。这使得黑客更难以窃听连接。
每个启用SSL / HTTPS的站点都会获得一个唯一的SSL证书,以便识别。如果服务器假装使用HTTPS,并且其证书不匹配,则大多数现代浏览器将警告用户连接到该网站。
去年,谷歌宣布计划通过鼓励网站所有者开始使用SSL / HTTPS来提高整体网络安全性。
作为此计划的一部分,Google的Chrome网络浏览器现在将没有SSL证书的所有网站标记为“不安全”。
浏览器地址栏中的“不安全”标签给您的客户留下了关于您的业务的不良印象。
除此之外,如果您想要建立在线商店或想要使用PayPal,Stripe,Authorize.net等支付服务,您还需要启用SSL / HTTPS。
考虑到优缺点,所有网站都需要切换到SSL / HTTPS。如果您还没有这样做,那么请转到我们的指南,了解如何将WordPress从HTTP正确移动到HTTP以获得分步说明。
话虽如此,让我们来看看WordPress中SSL / HTTPS的一些常见问题以及如何解决它们。
1.修复NET :: ERR_CERT_INVALID错误
此错误消息显示在Google Chrome中。其他浏览器显示此错误的消息略有不同,但它基本上警告用户他们与您网站的连接不安全。
此错误消息表示用户的浏览器不接受网站提供的证书。这可能由于以下原因而发生:
- SSL证书将颁发给其他域名或子域。
- 证书已过期。
- 您的浏览器无法识别证书颁发机构。
如果您购买了SSL证书并要求您的WordPress托管服务提供商为您安装,那么您可以联系他们为您修复它。
如果您手动安装了SSL证书,请尝试重新安装它或联系您的SSL证书提供商以获取支持。
2.将WordPress移动到SSL / HTTPS后修复混合内容错误
混合内容错误是由仍使用URL中的不安全HTTP协议加载的源(图像,脚本或样式表)引起的。
如果是这种情况,那么您将无法在网站的地址栏中看到安全的挂锁图标。
有两种方法可以修复WordPress中的SSL / HTTPS混合内容错误。我们将向您展示它们,然后您可以选择最适合您的一个。
1.使用插件修复了WordPress中的混合内容错误
这种方法更容易,建议初学者使用。
只需安装并激活Really Simple SSL插件即可。有关更多详细信息,请参阅有关如何安装WordPress插件的分步指南。
激活后,您需要访问设置»SSL用于查看插件设置的页面。真正简单的SSL开箱即用,将自动处理SSL / HTTPS设置并修复混合内容错误。
注意:该插件尝试使用输出缓冲技术来修复混合内容错误。这可能会对您的网站产生负面影响。但是,如果您使用的是缓存插件,那么它只会影响第一页加载。
2.手动修复WordPress中的混合内容错误
此方法需要手动排除故障,但它更有效,性能更好。
首先,您需要确保在WordPress设置中使用HTTPS。去设置»常规页面并确保WordPress地址和站点地址选项具有HTTPS URL。
如果您看到以HTTP开头的URL,则需要继续将其更改为HTTPS。不要忘记单击保存更改按钮来存储您的设置。
接下来,您需要在WordPress数据库中查找旧的HTTP URL,并将其替换为新的HTTPS URL。
您可以通过安装和激活Better Search Replace插件轻松完成此操作。有关更多详细信息,请参阅有关如何安装WordPress插件的分步指南。
激活后,您需要访问工具»更好的搜索替换页。在“搜索”字段中,您需要使用HTTP添加网站网址。之后,在“替换”字段中使用https添加您的网站网址。
该插件现在将更新WordPress数据库中的URL。
如果您仍然看到混合内容错误,则下一步是对WordPress主题和插件中的URL进行故障排除。
使用浏览器的Inspect工具,您需要找到导致错误的资源以及从哪里加载错误。
对于主题资源,您需要在WordPress主题中找到它们并用HTTPS替换HTTP。
这部分对于初学者来说可能有点困难,因为他们必须在所有主题文件中查找URL。
如果您无法自己找到它们,那么您也可以联系主题开发人员并请求他们更新主题。他们需要使用WordPress最佳实践来加载文件,这将解决HTTP / HTTPS问题。
同样适用于WordPress插件加载的混合内容。我们不建议您自己编辑插件文件来更改URL。您应该通知插件开发人员并请求他们进行更新。同时,您可以在您的网站上禁用该插件或查找替代插件。
3.在移至SSL / HTTPS后修复太多重定向错误
WordPress允许您通过在wp-config.php文件中输入以下行来为管理区域强制执行SSL / HTTPS。
define("FORCE_SSL_ADMIN", true);
但是,在某些情况下,仅此设置会导致“重定向太多”错误。要解决这个问题,您需要将以下代码添加到wp-config.php文件中,就在“那就是全部,停止编辑!快乐的博客。’。
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";
4.将WordPress HTTP修复为HTTPS重定向
除非您告知它,否则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 / HTTPS的一些常见问题。如果您遇到本文未涉及的问题,请发表评论告诉我们。我们将使用解决方案更新文章。您可能还希望看到我们的终极WordPress安全指南,以及初学者保护其WordPress网站的分步说明。
将WordPress网站移动到SSL有时会导致意外问题。如果您要将SSL添加到现有的WordPress网站并且遇到错误,那么您很幸运。在本指南中,我们将介绍如何解决WordPress中SSL / HTTPs最常见的问题。
什么是SSL / HTTPS以及为什么要立即开始使用它?
SSL / HTTPS是一种加密方法,可以保护用户浏览器和WordPress托管服务器之间的连接。这使得黑客更难以窃听连接。
每个启用SSL / HTTPS的站点都会获得一个唯一的SSL证书,以便识别。如果服务器假装使用HTTPS,并且其证书不匹配,则大多数现代浏览器将警告用户连接到该网站。
去年,谷歌宣布计划通过鼓励网站所有者开始使用SSL / HTTPS来提高整体网络安全性。
作为此计划的一部分,Google的Chrome网络浏览器现在将没有SSL证书的所有网站标记为“不安全”。
浏览器地址栏中的“不安全”标签给您的客户留下了关于您的业务的不良印象。
除此之外,如果您想要建立在线商店或想要使用PayPal,Stripe,Authorize.net等支付服务,您还需要启用SSL / HTTPS。
考虑到优缺点,所有网站都需要切换到SSL / HTTPS。如果您还没有这样做,那么请转到我们的指南,了解如何将WordPress从HTTP正确移动到HTTP以获得分步说明。
话虽如此,让我们来看看WordPress中SSL / HTTPS的一些常见问题以及如何解决它们。
1.修复NET :: ERR_CERT_INVALID错误
此错误消息显示在Google Chrome中。其他浏览器显示此错误的消息略有不同,但它基本上警告用户他们与您网站的连接不安全。
此错误消息表示用户的浏览器不接受网站提供的证书。这可能由于以下原因而发生:
- SSL证书将颁发给其他域名或子域。
- 证书已过期。
- 您的浏览器无法识别证书颁发机构。
如果您购买了SSL证书并要求您的WordPress托管服务提供商为您安装,那么您可以联系他们为您修复它。
如果您手动安装了SSL证书,请尝试重新安装它或联系您的SSL证书提供商以获取支持。
2.将WordPress移动到SSL / HTTPS后修复混合内容错误
混合内容错误是由仍使用URL中的不安全HTTP协议加载的源(图像,脚本或样式表)引起的。
如果是这种情况,那么您将无法在网站的地址栏中看到安全的挂锁图标。
有两种方法可以修复WordPress中的SSL / HTTPS混合内容错误。我们将向您展示它们,然后您可以选择最适合您的一个。
1.使用插件修复了WordPress中的混合内容错误
这种方法更容易,建议初学者使用。
只需安装并激活Really Simple SSL插件即可。有关更多详细信息,请参阅有关如何安装WordPress插件的分步指南。
激活后,您需要访问设置»SSL用于查看插件设置的页面。真正简单的SSL开箱即用,将自动处理SSL / HTTPS设置并修复混合内容错误。
注意:该插件尝试使用输出缓冲技术来修复混合内容错误。这可能会对您的网站产生负面影响。但是,如果您使用的是缓存插件,那么它只会影响第一页加载。
2.手动修复WordPress中的混合内容错误
此方法需要手动排除故障,但它更有效,性能更好。
首先,您需要确保在WordPress设置中使用HTTPS。去设置»常规页面并确保WordPress地址和站点地址选项具有HTTPS URL。
如果您看到以HTTP开头的URL,则需要继续将其更改为HTTPS。不要忘记单击保存更改按钮来存储您的设置。
接下来,您需要在WordPress数据库中查找旧的HTTP URL,并将其替换为新的HTTPS URL。
您可以通过安装和激活Better Search Replace插件轻松完成此操作。有关更多详细信息,请参阅有关如何安装WordPress插件的分步指南。
激活后,您需要访问工具»更好的搜索替换页。在“搜索”字段中,您需要使用HTTP添加网站网址。之后,在“替换”字段中使用https添加您的网站网址。
该插件现在将更新WordPress数据库中的URL。
如果您仍然看到混合内容错误,则下一步是对WordPress主题和插件中的URL进行故障排除。
使用浏览器的Inspect工具,您需要找到导致错误的资源以及从哪里加载错误。
对于主题资源,您需要在WordPress主题中找到它们并用HTTPS替换HTTP。
这部分对于初学者来说可能有点困难,因为他们必须在所有主题文件中查找URL。
如果您无法自己找到它们,那么您也可以联系主题开发人员并请求他们更新主题。他们需要使用WordPress最佳实践来加载文件,这将解决HTTP / HTTPS问题。
同样适用于WordPress插件加载的混合内容。我们不建议您自己编辑插件文件来更改URL。您应该通知插件开发人员并请求他们进行更新。同时,您可以在您的网站上禁用该插件或查找替代插件。
3.在移至SSL / HTTPS后修复太多重定向错误
WordPress允许您通过在wp-config.php文件中输入以下行来为管理区域强制执行SSL / HTTPS。
define("FORCE_SSL_ADMIN", true);
但是,在某些情况下,仅此设置会导致“重定向太多”错误。要解决这个问题,您需要将以下代码添加到wp-config.php文件中,就在“那就是全部,停止编辑!快乐的博客。’。
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";
4.将WordPress HTTP修复为HTTPS重定向
除非您告知它,否则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 / HTTPS的一些常见问题。如果您遇到本文未涉及的问题,请发表评论告诉我们。我们将使用解决方案更新文章。您可能还希望看到我们的终极WordPress安全指南,以及初学者保护其WordPress网站的分步说明。