如何修复 WordPress 中的混合内容错误
已发表: 2021-07-11今天运行网站需要您和您的用户之间的安全连接。 此连接是通过 SSL 证书完成的,在您的站点上安装实际上非常容易(且免费)。 大多数网络主机提供免费的 Let's Encrypt 证书和更新,只需点击几下即可安装。 然而,安装并不是最后一步。 但是,在设置 SSL 时,混合内容是一个常见问题,这不是什么大问题。 我们可以向您展示如何轻松修复 WordPress 中的混合内容错误并使您的网站完全安全。
什么是 WordPress 中的混合内容错误?
从本质上讲,混合内容错误是指您的 WordPress 站点通过 HTTPS 安全地提供一些资源,而通过 HTTP 不安全地提供一些资源。 有时,这些混合内容的一部分甚至不会显示出来,从而使您的网站以多种方式出现故障。 由于几个原因,这显然是不好的。
第一个是谷歌惩罚它认为不安全的任何站点,这两个站点都会在用户点击进入站点时警告他们,您的站点可能是任意数量的互联网恶意软件的所在地。 当浏览器本身警告潜在危险网站时,Chrome 用户将获得双倍剂量。
第二个是谷歌和其他搜索引擎会在排名中惩罚你的网站,因为你的网站不安全,可能包含恶意软件,而且用户体验很差,内容根本没有加载。
加上 WordPress 网站上的混合内容错误会严重影响加载时间,并且您遇到了用户和搜索引擎等将像瘟疫一样避开您的网站的三重原因。 因为对他们来说,您的网站看起来是这样或本身就有瘟疫。
那么您如何防止这种情况发生并使您的网站成为 Google 眼中的贱民呢?
如何使用插件修复 WordPress 中的混合内容错误
在 WordPress 中修复混合内容错误实际上相对简单。 由于平台的定制化和灵活性,插件开发人员基本上已经解决了您可能遇到的任何问题。 你只需要知道在哪里搜索。 对于大多数站点来说,能够快速安装和配置插件是最好的解决方案。

我们建议您查看 WebAware 的 SSL Insecure Content Fixer。 只需安装和激活插件就可以修复 WordPress 网站上显示的任何混合内容错误。 它处理,正如 WordPress.org 插件描述所说,“使用简单修复级别对您的网站进行一些基本修复。” 如果您需要更多,该插件有一个更高级的设置页面,您可以在其中调整需要保护的内容。
您可以在 WP 管理面板菜单中的设置 – SSL 不安全内容下找到设置。 请注意,已启用简单选择。

大多数时候,这是有效的。 为了确保它正常工作,我们强烈建议在 GT Metrix 或 Pingdom 上运行页面速度测试。 虽然这些测试本身非常棒,可以帮助识别您网站上的错误,但它们都报告不安全/混合内容。 因此,如果您确实有任何问题,其中一位会告诉您。
我们很幸运使用这个插件修复了除 Capture All 之外的所有错误。 根据我们的经验,自动修复的 AJAX 调用往往会破坏站点功能。 但是,其他每个选项都修复了 GT Metrix 或 Pingdom 发现的任何问题。
使用 SSL Insecure Content Fixer 等插件的最大问题是,如果您停用该插件,则混合内容修复程序也有可能停用。 如果这对您来说是一个潜在的问题,我们也有解决方案。
如何手动修复 WordPress 中的混合内容错误
与任何其他主要网络应用程序一样,WordPress 实际上只是服务器上的一个数据库。 如果该数据库中的资源仍被标记为 HTTP 并且浏览器正在调用 HTTPS……这是一个混合内容错误。 幸运的是,您也可以手动执行一些非常简单的修复。
在您的 WP 数据库中查找和替换
虽然这也涉及插件,但它仅用于实际功能,之后可以禁用。 在 WP.org 存储库中找到 Better Search Replace 插件。



在Tools – Better Search Replace 下,您将搜索域名的不安全实例并将其替换为 HTTPS 版本。 在搜索//yourdomain.com /替换为字段(2):所以,简单地输入http://yourdomain.com和https。
然后,选择要包括在搜索中的数据库表。 一般来说,这将是所有这些。 因此,单击顶部,滚动到底部,然后按住 Shift 键并单击最后一个。 这将突出显示列表(3)中的所有表。
我们建议启用作为试运行运行选项。 这样做将使插件执行所有操作,但实际上不会保存更改。 它会报告它发现的任何东西。

如果您喜欢所看到的内容,请取消选中试运行框并真正运行它。 但是,在这样做之前,我们强烈建议您备份您的站点和数据库。 任何时候你甚至想接触你的数据库,备份它。 损坏或处理不当的数据库是所有 WordPress 中最难修复的事情之一。
您也可以通过托管仪表板中的 phpMyAdmin 执行相同的过程,但它没有试运行功能,并且需要更多的技术知识来实施。 所以我们建议大多数人使用插件方法。
更改 .htaccess 文件
您网站的.htaccess文件负责引导流量并允许访问您网站的元素。 您可以通过使用 FileZilla(或其他 FTP 客户端)或从主机的仪表板文件管理器中向.htaccess文件添加几行来强制对站点资源使用 HTTPS。
基本上,您将使用.htaccess进行重定向,因此您现有的内容不会继续通过 HTTP 加载。
为此,请导航到/public_html或根目录并在其中查找.htaccess文件。 右键单击它并选择允许您编辑文件的选项,如果您使用 FTP,它将使用默认文本编辑器打开文件,如果您使用主机的仪表板,则将使用集成编辑器打开文件。

在里面,您将在最后的</IfModule>标记和读取#END WordPress的行之间传递以下代码。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
</IfModule>

这里也有忠告。 下载当前.htaccess文件的备份,以防这些更改出错。
如果一切正常,您应该不会再看到混合内容错误。 但是,如果您使用缓存插件,您可能仍会遇到错误。 如果是这种情况,请确保清空网站的缓存并再次尝试加载您的网站。
包起来
如果您或您的用户在 WordPress 中遇到混合内容错误,这并不像听起来那么可怕。 事实上,它是更容易修复的 WordPress 错误消息之一。 无论您更喜欢插件修复还是深入研究 WordPress 核心文件,摆脱网站上的混合内容错误都是简单、快速和容易的。
您对混合内容错误有什么经验?
文章特色图片由 Ksusha Dusmikeeva/shutterstock.com 提供
