Tag: SSL/HTTPS问题解决

  • 如何修复 WordPress 中常见的 SSL 问题

    如何修复 WordPress 中常见的 SSL 问题

    SSL可以让网站更安全,但许多网站所有者在将WordPress网站迁移到SSL或为现有网站添加SSL证书时,可能会遇到意想不到的问题。

    多年来,我们团队在帮助人们修复WordPress网站问题的过程中,解决了许多与SSL相关的问题,从混合内容警告到登录问题等。本指南会展示如何修复WordPress中最常见的SSL问题。

    图片[1]-361Sale WordPress Care

    什么是SSL/HTTPS?为什么需要立即使用它?

    SSL(Secure Sockets Layer,安全套接字层)是一种加密技术,可在用户浏览器与WordPress主机服务器之间创建安全连接。一旦启用SSL,网站将从HTTP切换到HTTPS,还会在浏览器中看到一个安全锁图标,表明网站是安全的。

    图片[2]-361Sale WordPress Care

    使用SSL/HTTPS的好处:

    1. 提高安全性:SSL/HTTPS使黑客更难监听连接,每个启用SSL的网站都会获得一个唯一的SSL证书用于身份验证。

    2. 改进用户信任:Google Chrome会将没有SSL证书的网站标记为“不安全”,这可能给用户留下不好的印象。

    图片[3]-361Sale WordPress Care

    3.支持在线支付:如PayPal、Stripe等支付服务需要启用SSL/HTTPS才能正常运行。

    因此,所有WordPress网站都应该切换到SSL/HTTPS。

    修复NET::ERR_CERT_INVALID错误

    Google Chrome 中出现 NET::ERR_CERT_INVALID 错误消息。其他浏览器显示的消息略有不同,但它基本上警告用户他们与网站的连接不安全。

    图片[4]-361Sale WordPress Care

    此 SSL错误消息表明用户的 Web 浏览器不接受网站提供的证书。这种情况可能由于多种原因而发生:

    • SSL证书颁发给不同的域名或子域。
    • 证书已过期。
    • 浏览器无法识别证书颁发机构。

    如果购买了 SSL 证书可以要求服务器提供商给你安装,可以联系他们给你修复。

    迁移到 SSL/HTTPS 后修复混合内容错误

    混合内容错误是由仍在使用 URL 中的不安全 HTTP 协议加载的源引起的。这些源可能包括图像、脚本或样式表等资源。

    如果是这种情况,那么将无法在网站的地址栏中看到安全挂锁或“调整”图标。

    图片[5]-361Sale WordPress Care

    有两种方法可以修复 WordPress 中的 SSL/HTTPS 混合内容错误。我们都会展示一下这两种方法,你们可以选择最适合自己的一种。

    1. 使用插件修复 WordPress 中的混合内容错误

    这种方法比较简单,建议新手使用。但它可能会对WordPress 性能产生负面影响,因为该插件会尝试使用输出缓冲技术来修复混合内容错误。

    但是,如果用缓存插件,则它只会影响首页加载。回访者不会注意到性能有任何差异。

    首先,要确定有 SSL 证书。

    然后,只需安装并激活Really Simple SSL插件即可。

    激活后,从 WordPress 管理仪表板访问“设置”»“SSL”页面来查看插件设置。Really Simple SSL 开箱即用,可自动处理网站 SSL/HTTPS 设置并修复混合内容错误。

    真正简单的 SSL 设置页面

    2. 手动修复 WordPress 中的混合内容错误

    这种方法更有效,对网站性能更好。但是,它需要手动排除故障。

    首先,要转到设置»常规,并确保“WordPress 地址”和“站点地址”选项具有 HTTPS URL。

    图片[7]-361Sale WordPress Care

    如果看到 URL 以“http”开头,则需要将其更改为“https”。要记得单击“保存更改”按钮保存设置。

    接下来,在WordPress 数据库中找到旧的 HTTP URL并将其替换为新的 HTTPS URL。

    可以通过安装和激活“Search & Replace Everything”插件轻松实现此目的。

    激活后,访问“工具”»“WP 搜索和替换”页面。在“搜索”字段中,需要使用 HTTP 添加网站 URL。之后,在“替换”字段中使用“https”添加网站 URL。

    将 URL 添加到搜索和替换字段中

    接下来,点击“预览搜索和替换”按钮查看将替换哪些 URL,然后按“全部替换”按钮继续。该插件现在将更新 WordPress 数据库中的 URL。

    如果仍然看到混合内容错误,那么下一步就是排除 WordPress 主题和插件文件中的 URL 故障。

    用浏览器的检查工具,找到导致错误的资源并记下它们从哪个网站文件加载。

    使用检查工具查找混合内容错误

    如果有编辑 WordPress 文件的经验,那么可以使用FTP控制面板文件管理器访问这些主题文件。要编辑每个文件并将“http”替换为“https”。

    另一种方法是联系主题开发人员,让他们更新主题。WordPress 插件加载的混合内容也是如此。我们不建议自己编辑插件文件,应该开工单通知插件开发人员支持。同时,可以在网站上禁用该插件或找替代插件。

    迁移至 SSL/HTTPS 后修复过多重定向错误

    在wp-config.php 文件中输入下面这行代码,WordPress 允许为管理区域强制实施 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 重定向

    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>