分类: WordPress错误

  • 如何修复Chrome浏览器报错ERR_SPDY_PROTOCOL_ERROR

    错误类型:
    浏览器错误
    错误名称:
    SPDY协议错误
    英文名称:
    ERR_SPDY_PROTOCOL_ERROR
    错误描述:
    SPDY协议是Chrome原生的。因此,ERR_SPDY_PROTOCOL_ERROR错误是Chrome特定的问题。当出现ERR_SPDY_PROTOCOL_ERROR错误表示您尝试访问的网页不可用时,这意味着浏览器不再支持SPDY协议。

    Chrome浏览器报错ERR_SPDY_PROTOCOL_ERROR

    无法访问特定网站可能是一种令人沮丧的体验,尤其是当您遇到 不理解的错误消息时。例如,您在浏览网页时可能会遇到的一个常见问题是“ERR_SPDY_PROTOCOL_ERROR”。

    虽然这条消息乍一看看起来技术性很强且复杂,但实际上非常简单。了解错误的含义可以使其更容易解决。一旦你知道你在处理什么,你可以使用一些快速的技巧来处理它。

    在这篇文章中,我们将解释Google Chrome浏览器中的SPDY协议是什么,以及ERR_SPDY_PROTOCOL_ERROR的含义。然后我们将探索可用于修复该错误的五种方法。

    1. Google Chrome中的SPDY简介
    2. 了解ERR_SPDY_PROTOCOL_ERROR
    3. 如何修复ERR_SPDY_PROTOCOL_ERROR

    Google Chrome中的SPDY简介

    在我们讨论ERR_SPDY_PROTOCOL_ERROR消息的含义以及如何解决它之前,首先了解什么是SPDY会很有帮助。简而言之,SPDY是Google Chrome网络协议。

    SPDY旨在帮助加强启用HTTP的网页的安全性。HTTP也是一种Web协议,它支持浏览器和服务器之间的通信和连接。SPDY中的“s”是“speedy”的缩写,反映了该协议旨在帮助增加网页加载时间并减少延迟。

    SPDY的一些额外好处包括:

    • 更低的带宽使用率
    • 提高性能
    • 更好的用户体验 (UX)

    SPDY在离开服务器后修改Web流量和数据,同时在此过程中优化带宽使用。结果可以为用户提供更快的体验。它还可以帮助解决一些与HTTP相关的常见问题。例如,HTTP一次只检索一个项目,但SPDY一次获取多个下载。

    了解ERR_SPDY_PROTOCOL_ERROR

    您在浏览网页时遇到的一些错误消息表明您尝试访问的站点存在问题。其他时候,它们表明您使用的操作系统存在问题。

    Google Chrome错误消息ERR_SPDY_PROTOCOL_ERROR 

    Google Chrome错误消息ERR_SPDY_PROTOCOL_ERROR

    好消息是,这意味着触发错误的网站没有问题。它还缩小了问题的根源,使您更接近解决方案。

    坏消息是,您使用的浏览器显然有问题。此问题可能不仅会干扰您现在尝试使用的站点,还会干扰将来的其他站点。

    正如我们之前提到的,SPDY协议是Chrome原生的。因此,ERR_SPDY_PROTOCOL_ERROR错误是Chrome特定的问题。它不会发生在其他浏览器中(尽管大多数其他浏览器都有自己的此错误消息版本)。

    当出现ERR_SPDY_PROTOCOL_ERROR错误表示您尝试访问的网页不可用时,这意味着浏览器不再支持SPDY协议。如果您尝试访问Google拥有的网页(例如Gmail或YouTube),则最常发生这种情况。但是,它也可能发生在不相关的网站上。

    如何修复ERR_SPDY_PROTOCOL_ERROR

    现在您知道ERR_SPDY_PROTOCOL_ERROR消息是什么,让我们来看看您可以使用的五种方法。

    1. 方法 1:更新并重新启动浏览器
    2. 方法 2:使用Google Chrome的隐身模式
    3. 方法 3:清除浏览缓存
    4. 方法 4:刷新SPDY Pockets
    5. 方法 5:清理DNS并更新IP

    请记住,由于这是Chrome特定的问题,因此您只能通过Chrome解决它。尝试在其他浏览器中执行以下步骤将无效。

    方法 1:更新并重新启动浏览器

    解决ERR_SPDY_PROTOCOL_ERROR消息应该采取的第一步是更新并重新启动浏览器。这可能看起来很简单,但有时这真的是让恼人的消息消失并授予您访问您尝试访问的站点的权限。

    为此,只需退出浏览器即可。然后重新打开它并尝试访问同一个网站。请记住,这是一个快速修复解决方案,即使它暂时解决了错误,您也可能需要使用以下一些方法来调查潜在问题。

    如果您在重新启动浏览器后仍然遇到ERR_SPDY_PROTOCOL_ERROR,则可能需要更新它。要检查您的Chrome浏览器是否是最新的,请单击浏览器右上角的三个垂直点。然后转到“帮助”>“关于Google Chrome”:

    关于Google Chrome

    关于Google Chrome

    这将带您进入“关于”页面。它会告诉您您使用的是哪个版本的 Chrome,并会在必要时开始更新浏览器:

    Google Chrome更新页面

    Google Chrome更新页面

    该过程完成后,单击“重新启动”按钮。然后,尝试再次访问该网站以查看问题是否已解决。如果没有,您将需要继续下一个方法。

    方法 2:使用Google Chrome隐身模式

    另一个简单但通常有效的解决方案是在“隐身”模式下使用浏览器。为此,请选择浏览器的菜单并单击新建隐身窗口:

    谷歌浏览器中的隐身模式

    谷歌浏览器中的隐身模式

    您也可以使用键盘上的Ctrl+Shift+N到达这里。激活隐身模式后,在搜索栏中输入您尝试访问的站点的URL。如果问题仍然存在,请转到下一个方法。

    另一方面,如果问题得到解决,您将能够访问该站点。但是,请记住,与重新启动浏览器一样,这只是临时修复。因此,请继续阅读一些可能的方法来处理错误的根本原因。

    方法 3:清除浏览缓存

    如果即使在重新启动浏览器并使用隐身模式后网页仍然不可用,您可以尝试清除浏览器的缓存。为此,请转到Chrome中的“设置”,然后向下滚动并单击页面底部的“高级”链接。

    这将打开一个包含更多设置的下拉菜单。选择清除浏览数据:

    谷歌浏览器清除浏览数据的设置

    谷歌浏览器清除浏览数据的设置

    接下来,您将进入一个带有两个选项卡的新窗口:基本和高级:

    Google Chrome中的清除浏览数据窗口

    Google Chrome中的清除浏览数据窗口

    我们建议留在基本选项卡中。这样,浏览器将保留您的密码、自动填充数据等。只需选择清除数据, 然后让浏览器稍等片刻即可工作。

    该过程完成后,重新启动浏览器并检查错误是否仍然出现。

    方法 4:刷新SPDY Pockets

    可以解决 ERR_SPDY_PROTOCOL_ERROR 的另一个解决方案是刷新“SPDY Pockets”。为此,请打开Chrome浏览器并键入或复制以下内容并将其粘贴到URL栏中:

    chrome://net-internals/#events&q=type:SPDY_SESSION%20is:active.

    接下来,按Enter键。这将带您进入如下所示的页面:

    Google Chrome中的SPDY设置页面

    Google Chrome中的SPDY设置页面

    从那里,单击左侧导航面板中的Sockets:

    Google Chrome中的套接字设置页面

    Google Chrome中的套接字设置页面

    在那里,单击Flush sockets pool按钮。然后尝试访问触发错误的站点,查看问题是否已解决。如果没有,您可以尝试另一种方法。

    方法5:清理DNS并更新IP

    如果您已经尝试了上述所有方法,但仍然看到 ERR_SPDY_PROTOCOL_ERROR 消息,则问题可能与您的域名系统 (DNS) 有关。要刷新您的DNS,您首先要打开命令提示符。

    在Windows中,您可以通过使用Win  + R键,然后在出现的框中键入“cmd”并按Enter来执行此操作。您也可以打开“开始”菜单,然后在搜索栏中键入“命令提示符”。接下来,选择以管理员身份运行

    Windows中的“以管理员身份运行”按钮

    Windows中的“以管理员身份运行”按钮

    在Mac上,您可以通过终端访问命令提示符。为此,请打开Finder, 然后单击 左侧面板中的应用程序

    Mac上的应用程序窗口

    Mac上的应用程序窗口

    接下来,向下滚动并单击Utilities文件夹,然后单击Terminal  

    Mac上的终端应用程序

    Mac上的终端应用程序

    请访问我们的深入指南,了解有关如何根据您的操作系统和浏览器刷新DNS缓存的所有详细信息。

    完成此任务后,重新启动浏览器并再次访问相关站点以验证问题是否已解决。(了解如何修复Chrome的ERR_CACHE_MISS错误)。

    小结

    谷歌浏览器是一款非常受欢迎的浏览器,拥有高达73%的浏览器市场份额,并且在大多数情况下运行非常流畅。但是,有时您可能会遇到阻止您访问特定网站的ERR_SPDY_PROTOCOL_ERROR消息。

    虽然令人沮丧,但此问题无需大量技术知识即可解决。具体来说,您可以使用五种方法来解决Chrome ERR_SPDY_PROTOCOL_ERROR消息:

    1. 更新并重新启动Google Chrome浏览器。
    2. 使用谷歌浏览器的隐身模式访问网站。
    3. 清除浏览器的缓存。
    4. 刷新Chrome浏览器SPDY Pockets。
    5. 清理您的DNS缓存并更新IP。
  • 如何修复解决HTTP 302错误

    错误类型:
    HTTP错误
    错误名称:
    HTTP 302错误码
    英文名称:
    HTTP 302 Error
    错误描述:
    3xx状态代码(301、302等)是一类称为“重定向代码”的状态代码。每当服务器发回新资源而不是请求的资源时,就会返回它们。

    如何修复解决HTTP 302错误

    HTTP 302代码是一种将网站用户临时重定向到不同URL的宝贵方式。但是,如果您的网站错误地提供302重定向,则表明出现问题。

    别担心——你可以解决这个问题——但你需要做一些故障排除。

    第一步是准确了解HTTP 302代码是什么、它们如何工作以及它们为何出现。一旦你知道了这一点,你就可以弄清楚出了什么问题以及如何改正。

    在这篇文章中,我们将告诉您有关HTTP 302错误的所有信息。然后,我们将分享五个故障排除提示,以帮助您解决这些问题。

    1. 什么是HTTP 302状态代码?
    2. 302重定向如何工作
    3. 为什么会发生HTTP 302错误
    4. 如何修复HTTP 302错误

    什么是HTTP 302状态代码?

    302代码是一种特定类型的HTTP状态代码。这些代码就像服务器传送到您的浏览器的“注释”。

    每当您单击链接或导航到URL时,您的浏览器都会向网络服务器请求相同的内容。作为回报,服务器将相关资源(例如您尝试访问的页面)连同HTTP标头一起发回。HTTP状态代码位于该标头内。

    通常,您无法在网页的任何位置看到这些状态代码。您通常只会在发生错误时看到它们,或者如果您安装了使它们可见的浏览器扩展程序:

     

    使用Chrome浏览器扩展程序显示网页的HTTP状态代码

    使用Chrome浏览器扩展程序显示网页的HTTP状态代码

    3xx状态代码(301、302等)是一类称为“重定向代码”的状态代码。每当服务器发回新资源而不是请求的资源时,就会返回它们。

    换句话说,当您打算访问的网站页面将您重定向到不同的页面时,就会显示它们。

    代码301和代码302之间的关键区别在于,前者用于永久重定向,而后者用于临时重定向。

    301重定向也会通过“链接汁(所谓权重)”,而302则不会。这对搜索引擎优化 (SEO)有重大影响。

    302重定向如何工作

    当您为网站上暂时不可用的页面设置302重定向,并且用户访问该页面时,您的网络服务器将使用特殊的Location标头响应访问者的浏览器。此标头将指示浏览器应将用户重定向到的新 URL。

    例如,假设用户在其浏览器URL栏中键入blog.example.com,但该网站被配置为将其重定向到blogging.example.com

    服务器响应将包括302状态代码和Location: blogging.example.com标头。此设置告诉用户的浏览器将此请求重定向到新URL。

    当然,所有这一切都是在幕后自动发生的。用户不应该能够看到这些播放的任何内容。相反,他们的浏览器应该自动将他们带到新资源。

    为什么会发生HTTP 302错误

    如果您网站上的某些内容配置错误,则可能会导致错误地发出302代码。如果发生这种情况,您可能会遇到以下问题:

    • 您网站上的一个页面,在不应该将您的访问者重定向到其他地方时
    • 您网站上将访问者重定向到错误资源的页面
    • 所述ERR_TOO_MANY_REDIRECTS错误(也称为“重定向循环”)

    这些问题中的最后一个是唯一会显示实际错误页面的问题。如果您使用Chrome浏览器,重定向循环错误页面将如下所示:

     

    Chrome浏览器ERR_TOO_MANY_REDIRECTS错误消息

    Chrome浏览器ERR_TOO_MANY_REDIRECTS错误消息

    在Mozilla Firefox上,它看起来像这样:

     

    Firefox浏览器ERR_TOO_MANY_REDIRECTS错误消息

    Firefox浏览器ERR_TOO_MANY_REDIRECTS错误消息

    以上所有问题都是由一些错误配置引起的。可能是插件冲突、不正确的URL设置或错误配置的.htaccess文件。

    如何修复HTTP 302错误

    接下来,我们将向您介绍五种故障排除方法,这些方法可以帮助您找出导致问题的原因并加以解决。

    在我们开始之前,请确保先对您的网站进行完整备份。这样,如果出现任何问题,您始终可以恢复到以前的版本。您可以使用WordPress备份插件来执行此操作。

    1. 确定重定向是否有效

    302响应通常不是错误。暂时将用户重定向到不同的页面可能是一种有效的配置,通常不需要修复。

    如果您的网站以不应发布的302代码响应,或者它导致重定向循环,这只是一个错误。因此,第一步是仔细检查哪些URL正在生成 HTTP 302代码,并确定重定向是否合适。

    为此,您可以导航到您怀疑出现302错误的网站页面,并亲自查看它们的行为是否符合预期。如果暂时不可用的页面重定向到正确的资源,则它已被适当配置。

    但是,如果页面将您重定向到错误的资源,或者您的浏览器通过显示ERR_TOO_MANY_REDIRECTS错误页面报告重定向循环,则表明您的一个(或多个)重定向配置不正确。

    2. 检查你的插件

    302错误和重定向循环的最常见原因之一是插件。

    一些WordPress重定向管理器插件和SEO工具(如Yoast SEO)为您管理您的网站重定向,并使您能够设置重定向规则:

     

    Yoast SEO Premium插件重定向设置页面

    Yoast SEO Premium插件重定向设置页面

    如果这些规则配置错误,或者两个插件发生冲突,可能会导致意外问题。因此,您需要检查站点上安装的每个相关工具。

    例如,如果您使用流行的WordPress插件301 Redirects ,您可以通过导航到Settings > 301 Redirects来检查配置。在Redirect Rules下,您将看到您设置的所有重定向规则的列表:

     

    301 Redirects插件重定向规则设置页面

    301 Redirects插件重定向规则设置页面

    检查此处列出的所有302重定向,并确保它们都是正确的。

    您还需要确保没有以可能导致重定向循环的方式设置任何内容。例如,如果Page-A设置为重定向到Page-B,而Page-B也设置为重定向到Page-A,则会导致错误。

    如果您有多个重定向管理器插件并且您不确定是哪个导致了问题,您可以尝试从WordPress插件页面一个一个地停用它们(请务必先进行备份):

     

    WordPress管理仪表盘插件列表

    WordPress管理仪表盘插件列表

    停用每个插件后,尝试重新访问问题URL以查看302错误是否仍然存在。

    如果问题突然得到解决,您就会知道是哪个插件导致了问题,然后您可以选择进一步排除故障或将其从您的站点中删除。

    3. 确保您的WordPress URL设置配置正确

    HTTP 302错误的另一个常见原因是WordPress URL设置中的错误配置。

    要进行检查,在你的WordPress的仪表盘导航到设置>常规。在这里,您应该会看到一个WordPress地址 (URL)字段和一个站点地址 (URL)字段:

     

    WordPress中的常规设置页面

    WordPress中的常规设置页面

    在大多数情况下,这两个字段中的URL应该匹配。确保它们相同,包括域名前的“www”部分(或缺少)。

    如果它们不匹配,请更新设置,然后检查发出HTTP 302错误的页面的URL以查看它是否已修复。

    4. 检查您的服务器配置

    错误配置的服务器有时也会导致302重定向错误。因此,下一步是检查您的服务器配置。

    如果您的主机使用Apache网络服务器,您可以通过检查您的.htaccess文件来做到这一点。

    首先,通过宝塔面板、cPanel或FTP客户端连接到您的网站服务器。然后导航到您站点的根目录 – 与wp-adminwp-content文件夹相同的位置- 并找到.htaccess文件:

     

    站点根目录中的 .htaccess 文件

    站点根目录中的 .htaccess 文件

    如果您在此处找不到.htaccess文件(并且您确定在Apache服务器上),设置FileZilla显示隐藏文件。

    接下来,在您喜欢的文本编辑器中打开该文件。它应该是这样的:

     

    .htaccess文件中的RewriteXXX指令

    .htaccess文件中的RewriteXXX指令

    RewriteCond指令指定的网址,您希望访问者重定向远,而RewriteRule指令指定要他们重定向的URL

    RewriteCond指令指定重定向源URL,而RewriteRule指令指定重定向的目标链接。下面是一个例子:

    下面是一个例子:

    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^website.com$
    RewriteRule ^(.*)$ http://www.temporary-website.com/$1 [R=302]
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^website.com$
    RewriteRule ^(.*)$ http://www.temporary-website.com/$1 [R=302]
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^website.com$
    RewriteRule ^(.*)$ http://www.temporary-website.com/$1 [R=302]

    最后的标志“[R=302]”告诉浏览器这是一个临时的302重定向。

    如果您在.htaccess文件中发现与上述类似的任何RewriteXXX组合不应该存在,您可以将它们注释掉,保存更改,然后重新加载问题网页以查看它是否解决了问题。

    在进行任何更改之前,请确保下载并保存.htaccess文件的备用副本,以防出现问题。

    5. 与服务器提供商联系

    如果您已经尝试了上述所有方法,但仍然遇到问题,下一步就是与您的网络托管服务商联系。

    对超过这一点的302代码错误进行故障排除需要大量的技术知识。因此,除非您是专业开发人员,否则最好向专家寻求帮助。

    小结

    HTTP 302状态代码是重定向网站访问者的一种完全正常的方式。但是,它们应该只在资源页面暂时不可用时使用。

    假设您的网站错误地发出302代码或导致重定向循环。在这种情况下,尽快解决此问题至关重要,否则可能会对您的SEO和转化产生负面影响。

    您可以按照以下五个步骤修复您网站上的HTTP 302错误:

    1. 通过检查发出302重定向的URL来确定重定向是否合适。
    2. 检查您的插件以确保任何重定向设置都有效。
    3. 确保您的WordPress URL设置配置正确。
    4. 通过在.htaccess文件(仅限Apache服务器)中查找不正确的RewriteXXX指令来检查您的服务器配置。
    5. 如果问题仍然存在,请与您的网络托管服务商联系以获得进一步的技术支持。

    参考阅读:

  • 如何解决“Remove following Redirect Chain”错误

    错误类型:
    其他错误
    错误名称:
    重定向链错误
    英文名称:
    Remove following Redirect Chain
    错误描述:
    各种问题似乎都会导致重定向错误。然而,WordPress插件似乎是最常见的罪魁祸首。

    如何解决“Remove following Redirect Chain”错误

    为了使您的网站保持最佳状态,您需要定期对其进行测试。但是,有一条GTmetrix错误消息让WordPress站长感到困惑:“Remove the following redirect chain if possible.”

    如果您遇到此错误,可以通过多种方法找出导致如此多重定向的原因。一旦您确定了罪魁祸首,删除所有这些削弱性能的重定向可能就像按下WordPress仪表盘中的几个按钮一样简单。

    在这篇文章中,我们将讨论什么是重定向链,以及为什么它们对您的流量、转化率和搜索引擎排名来说是个坏消息。然后,我们将分享四种解决此错误的方法,并使您的WordPress网站重回正轨。

    1. 重定向链介绍
    2. 如何解决Remove following Redirect Chain错误

    重定向链介绍

    定期测试您的网站很重要。有很多可用的工具,但GTmetrix是一个流行的选择。它提供实时性能跟踪,以及安排测试的选项。

     

    GTmetrix性能测试工具

    GTmetrix性能测试工具

    但是,GTmetrix可能偶尔会警告您,您的站点上存在许多重定向链。如果您更详细地探索这些消息,GTmetrix会建议您“Remove the following redirect chain if possible”。

    当请求的URL和目标URL之间存在多个重定向时,就会出现链。这些链需要多次往返服务器和额外的请求。

    因此,目标网页将需要更长的时间来加载。

    缓慢的页面加载时间会对访问者体验产生负面影响。事实上,40%的人会放弃加载时间超过三秒的网站。通过这种方式,重定向链可以影响您的流量水平、转化率和销售额。

    这些链不仅会影响您的访问者,因为搜索引擎爬虫也会注意到页面加载时间变慢。将您的网站放在搜索结果中时,Google会考虑许多不同的排名因素,包括速度。特别是,Google的Core Web Vitals计划衡量访问者如何看待您网站的速度、响应能力和视觉稳定性。

    随着所有流量的50%以上来自有机搜索发起,搜索引擎优化(SEO)是实现在线的成功至关重要。如果重定向链损害了您的页面加载时间,那么您的搜索引擎排名几乎肯定会因此而受到影响。

    如果您要提高排名并使潜在客户惊叹,则必须优化网站的加载时间。因此,如果GTmetrix警告您有关重定向,删除这些链应该是重中之重。

    什么导致GTmetrix的重定向链错误

    各种问题似乎都会导致重定向错误。然而,WordPress插件似乎是最常见的罪魁祸首。

    特别是,据报道WordPress社区的成员在安装以下插件后遇到了GTmetrix的重定向警告:

    • ShortPixel Adaptive Images
    • a3 Lazy Load
    • Smush
    • Autoptimize
    • Smash Balloon
    • W3 Total Cache

    其中许多工具都与优化有关。重定向链和通过内容交付网络 (CDN) 交付的优化活动之间似乎存在直接联系。

    这意味着如果您使用具有这些功能的替代图像优化插件或CDN,即使您的特定软件未在上面列出,您也可能会遇到GTmetrix的警告。

    在将站点迁移到新平台或更改域名后,您可能还会遇到重定向链的问题。作为此迁移的一部分,您通常需要实现大量重定向。随着时间的推移,这些可能会变成不守规矩的链条。

    如果您怀疑 GTmetrix 的警告可能与最近的站点迁移有关,我们建议您手动检查所有重定向。尽管这可能很耗时,但它为您提供了发现网站问题的最佳机会。

    如何解决“Remove following Redirect Chain”错误

    令人沮丧的是,此错误可能是由各种不同的插件、设置和第三方软件(例如防火墙)引起的。

    虽然没有一刀切的解决方案,但有一些方法可以追查特定网站的根本原因。让我们来看看如何消除混乱并去除那些破坏性能的重定向链。

    1. 检查您的CDN设置

    如果您使用CDN和防火墙,您的防火墙可能会阻止服务器访问您的图像。

    如果您怀疑可能是这种情况,我们建议您将CDN上的IP地址“列入许可名单” 。“列入许可名单”过程会因相关CDN和防火墙而异,因此您可能需要参阅提供商的文档以获取更多信息。

    同样,您的图像文件可能无法公开访问。例如,您可能使用密码保护您的网站 或定义了无意中阻止CDN访问您的图像的规则。

    如果这听起来合理,请尝试禁用所有可能阻止CDN的设置和规则。特别是,如果您创建了防止盗链的规则,这通常会干扰CDN,从而导致重定向链。

    根据您的CDN订阅,您也有可能超出了每月的流量配额。发生这种情况时,一些提供者会将请求重定向到原始图像,从而导致连锁。

    要检查您的订阅状态,请尝试登录您的CDN帐户或控制台。您应该在此处看到有关您使用情况的更多信息。

    如果这些修复都不能解决您的问题,您可能会通过从CDN刷新重定向的图像来获得积极的结果。

    刷新过程可能会有所不同,但通常涉及登录到您的提供商的仪表板或访问CDN插件设置。然后,您可以查找与缓存相关的任何选项。

    如果您遇到困难,最好查看CDN的文档以获取更多信息。或者,您可以随时联系您的提供商寻求帮助。

    2.检查特定插件的错误消息

    检查错误消息本身也很好,因为它可能会命名负责重定向链的插件。以WordPress社区成员发布的关于在GTmetrix中接收的示例为例:

    如果可能,删除以下重定向链: wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif

    此消息似乎表明a3 Lazy Load插件正在生成重定向链。

    如果您的错误消息命名了特定插件,请检查以确保您运行的是最插件版本。如果您落后于更新,开发人员可能已经在后续补丁中解决了此错误。

    如果您有最新版本,下一步是联系插件的开发人员。他们有可能完全不知道这个问题。

    如果您从官方WordPress插件目录下载插件,则列表应包含此特定插件背后的人员或团队的姓名:

     

    JetPack插件页面

    JetPack插件页面

    更好的是,此页面可能包含指向开发人员网站的链接。从那里,您通常可以找到他们的联系方式。

    或者,每个WordPress插件库列表都包含一个支持选项卡。通过发布您的问题,您可以获得开发者甚至其他用户的帮助。

     

    官方WordPress插件库中的支持选项卡

    官方WordPress插件库中的支持选项卡

    理想情况下,如果您设法取得联系,开发人员将确认他们已经意识到问题并且已经在开发补丁。

    然而,开发人员放弃他们的插件并不罕见,这可能会使问题复杂化。如果您怀疑此特定软件不再处于积极开发状态,您可能需要禁用它并寻找替代方案。

    好消息是,仅WordPress插件库中就有近60,000个免费插件,您应该可以轻松找到合适的替代品。

    3. 禁用(然后重新启用)所有插件

    有时,错误消息可能没有提到特定的插件。如果GTmetrix含糊不清,那么是时候进行调查工作了。

    您可以通过停用网站上的每个插件来检查插件是否负责。如果错误消息消失,您就会知道应该归咎于WordPress插件。

    但是,停用这些加载项可能会影响您的站点的显示和运行方式。对于用户体验 (UX) 而言,这通常是个坏消息。因此,在整个测试过程中将您的站点置于维护模式是明智的。

    如果您对编写维护消息感到不舒服,可以使用 WP Maintenance Mode之类的插件:

     

     WP Maintenance Mode插件

     WP Maintenance Mode插件

    为了增加安全性,我们还建议您在开始关闭插件之前创建备份。如果您遇到任何严重的问题,这对于将您的站点恢复到以前的配置将是非常宝贵的。

    您的主机可能会提供自动备份选项,你也可以利用宝塔面板的计划任务进行自动备份或者手动备份功能。如果没有,您可以使用多个备份插件

    现在您已准备好备份和维护模式,您可以禁用插件。

    这种做法有助于验证插件是否正在生成所有这些重定向。但是,如果您仍能查明确切的罪魁祸首,那将会有所帮助。

    下一阶段是一个一个地重新启用每个插件,在每个插件之后运行一个新的GTmetrix测试。一旦错误再次发生,您就会识别出行为不端的插件。

    但是,停用和删除麻烦的插件并不总是可行的。也许它与您的网站主题联系得太紧密,或者您没有找到快速替换的好选择。

    如果是这种情况,您可以考虑联系开发人员。他们可能会指出您何时可以期待补丁,甚至可能会分享解决方法。例如,禁用特定设置可以让您继续使用插件而不会遇到重定向链错误。

    但是,有时开发人员可能不打算修复该问题,主要是在软件不再处于积极开发阶段的情况下。如果是这种情况,搜索提供类似功能但不会产生数十个不必要重定向的替代方案通常是有意义的。

    4. 检查您的.htaccess文件

    如果您之前设置了重定向或安装了任何为您管理重定向的附加组件,那么值得查看您站点的.htaccess文件。“超文本访问”的缩写,这是安装WordPress时自动创建的关键配置文件。

    请注意,.htaccess文件仅在运行Apache的服务器上可用。Nginx服务器,没有这个特定于Apache的文件。

    对此文件的修改有时可能会导致大量重定向链。幸运的是,有多种方法可以查看此文件,包括通过文件管理器或控制仪表板(如 cPanel )。您将在网站的public_html文件夹中找到.htaccess文件。

    或者,您可以使用FileZilla等客户端通过安全文件传输协议 (SFTP)连接到您的服务器。

    在FileZilla客户端中,导航到文件>站点管理器

     

    FileZilla FTP客户端

    FileZilla FTP客户端

    如果您是第一次连接到您的服务器,请选择New Site。然后,您可以为此连接指定一个名称:

     

    使用FileZilla FTP客户端连接到服务器

    使用FileZilla FTP客户端连接到服务器

    如果您通过SFTP连接,请输入端口值21

    然后您可以打开登录类型框并选择询问密码。接下来,输入您的SFTP用户名和密码,然后单击“连接”按钮。

    如果连接成功,您网站的所有文件都应该出现在FileZilla的右侧窗口中。

    在此面板中,导航到您网站的public_html目录。您现在应该可以访问您的.htaccess文件。

    如果您在此文件中发现任何独特的代码,最好将此奇怪的代码复制并粘贴到您最喜欢的搜索引擎中。这通常是解读此代码对您网站的影响以及它是否可能位于所有这些重定向链之后的最快捷、最简单的方法。

    小结

    似乎有许多不同的插件和设置会导致重定向链。但是,通过遵循一些简单的步骤,您可以缩小导致特定网站出现此问题的原因。

    为了恢复您网站的性能,让我们快速回顾一下解决GTmetrix重定向链错误的四种可能方法:

    1. 检查您的CDN。
    2. 检查特定插件的错误消息。
    3. 禁用(然后重新启用)所有插件。
    4. 查看您的.htaccess文件。

    通过遵循这些故障排除步骤,您应该立即消除“Remove the following redirect chain if possible”错误。

  • 如何修复ERR_SSL_VERSION_OR_CIPHER_MISMATCH报错

    错误类型:
    安全相关错误
    错误名称:
    ERR SSL版本或密码不匹配
    英文名称:
    ERR_SSL_VERSION_OR_CIPHER_MISMATCH
    错误描述:
    ERR_SSL_VERSION_OR_CIPHER_MISMATCH错误通常发生在较旧的操作系统或浏览器上。
    错误变体:
    SSL_ERROR_NO_CYPHER_OVERLAP
    更多信息

    如何修复ERR_SSL_VERSION_OR_CIPHER_MISMATCH报错

    当您访问通过HTTPS运行的网站时,浏览器和Web服务器之间会执行一系列步骤,以确保证书和SSL/TLS连接有效。

    其中一些包括TLS握手、针对证书颁发机构检查的证书以及证书的解密。如果由于某种原因浏览器不喜欢它所看到的内容,例如配置错误或不受支持的版本,您的浏览器可能会显示以下错误:“ERR_SSL_VERSION_OR_CIPHER_MISMATCH”这会阻止您访问该站点。

    查看有关如何修复此错误的一些建议。

    ERR_SSL_VERSION_OR_CIPHER_MISMATCH的原因

    ERR_SSL_VERSION_OR_CIPHER_MISMATCH错误通常发生在较旧的操作系统或浏览器上。

    但情况并非总是如此。事实上,我们最近刚刚在他们的WordPress网站上遇到了一个有这个问题的用户,他从另一个主机迁移到另外一个主机。当然,我们运行的是最新版本的Chrome,所以问题出在他们的SSL证书上。Chrome实际上是通过不让您加载它来保护您。

    ERR_SSL_VERSION_OR_CIPHER_MISMATCH

    ERR_SSL_VERSION_OR_CIPHER_MISMATCH

    您可能还会看到错误的变体,例如:

    • Error 113 (net::err_ssl_version_or_cipher_mismatch): unknown error
    • The client and server don’t support a common SSL protocol version or cipher suite

    查看下面的原因,了解发生这种情况的原因以及您可以采取的措施。

    检查您的SSL证书

    如果您看到此错误,第一个也是最容易开始的地方是对站点上安装的证书执行SSL检查。我们建议使用Qualys SSL Labs提供的免费SSL检查工具。它非常可靠,只需在主机名字段中输入您的域,然后单击“提交”。

    如果您愿意,您还可以选择隐藏公开结果的选项。在您的Web服务器上扫描您站点的SSL/TLS配置可能需要一两分钟的时间。

    检查SSL证书

    检查SSL证书

    检查证书名称不匹配

    在这个特定的例子中,迁移另外一个主机的客户有一个证书名称不匹配,这会引发ERR_SSL_VERSION_OR_CIPHER_MISMATCH错误。正如您从下面的SSL Labs测试中看到的,这非常快速且易于诊断。正如SSL Labs所说,不匹配可能有多种情况,例如:

    • 该站点不使用SSL,但与其他使用SSL的站点共享一个IP地址。
    • 该站点不再存在,但域仍指向旧IP地址,现在托管了其他一些站点。
    • 该站点使用不支持SSL的内容交付网络 (CDN)。
    • 域名别名是针对不同名称的网站,但别名未包含在证书中。

    证书名称不匹配

    证书名称不匹配

    检查证书上当前域名问题的另一种简单方法是在站点上打开Chrome DevTools。右键单击网站上的任意位置,然后单击“检查”。然后单击安全选项卡并单击“查看证书”。颁发的域将显示在证书信息中。如果这与您当前所在的站点不匹配,则这是一个问题。

     

    检查SSL证书上颁发的域

    检查SSL证书上颁发的域

    但请记住,有通配符证书和其他变体,但对于典型站点,它应该完全匹配。然而,在我们的例子中,ERR_SSL_VERSION_OR_CIPHER_MISMATCH错误实际上阻止了我们在Chrome DevTools中检查它。这就是SSL Labs之类的工具可以派上用场的地方。

    检查旧的TLS版本

    另一个可能的原因是Web服务器上运行的TLS版本较旧。理想情况下,它应该至少运行TLS 1.2(更好的是TLS 1.3)。(建议阅读:如果您使用的是旧版TLS版本,您可能需要修复Chrome中的ERR_SSL_OBSOLETE_VERSION通知)。

    SSL Labs工具也可以提供帮助。在配置下,它将向您显示使用该证书在服务器上运行的TLS的当前版本。如果它是旧的,请联系您的主机并要求他们更新其TLS版本。

    TLS 1.3服务器支持

    TLS 1.3服务器支持

    检查RC4密码套件

    根据Google的ERR_SSL_VERSION_OR_CIPHER_MISMATCH文档的另一个原因是RC4密码套件在Chrome版本48中被删除。这不是很常见,但它可能发生在需要RC4的大型企业部署中。为什么?因为在更大和更复杂的配置中,一切通常都需要更长的时间来升级和更新。

    安全研究人员、Google和Microsoft建议禁用RC4。因此,您应该确保使用不同的密码套件启用服务器配置。您可以在SSL Labs工具中查看当前的密码套件(如下所示)。

    密码套件

    密码套件

    尝试清除计算机上的SSL状态

    要尝试的另一件事是清除Chrome中的SSL状态。就像清除浏览器的缓存一样,如果事情不同步,这有时会有所帮助。要在Windows上的Chrome中清除SSL状态,请按照下列步骤操作:

    • 单击Google Chrome – 设置图标 (Settings) 图标,然后单击设置。
    • 单击显示高级设置。
    • 在网络下,单击更改代理设置。出现Internet属性对话框。
    • 单击内容选项卡。
    • 单击“清除SSL状态”,然后单击“确定”。
    • 重新启动Chrome。

    在Windows上的Chrome中清除SSL状态

    在Windows上的Chrome中清除SSL状态

    如果您使用的是Mac,请参阅这些有关如何删除SSL证书的说明

    使用新的操作系统

    较旧的操作系统会随着TLS 1.3和最新的密码套件等新技术而过时,因为浏览器不再支持它们。最新SSL证书中的特定组件将停止工作。事实上,谷歌浏览器早在2015年就停止了对Windows XP的支持。我们始终建议尽可能升级到更新的操作系统,例如Windows 11或最新版本的Mac OS X。

    暂时禁用杀毒软件

    如果您仍然看到ERR_SSL_VERSION_OR_CIPHER_MISMATCH错误,我们建议您尝试的最后一件事是确保您没有运行防病毒程序。或者尝试暂时禁用它。某些防病毒程序会使用自己的证书在您的浏览器和Web之间创建一个层。这有时会导致问题。

  • 如何修复“SSL_ERROR_NO_CYPHER_OVERLAP”错误

    错误类型:
    浏览器错误
    错误名称:
    ERR SSL版本或密码不匹配
    英文名称:
    SSL_ERROR_NO_CYPHER_OVERLAP
    错误描述:
    除了错误消息外,Firefox可能还会向您显示“无法验证数据的真实性”。如果是这样,该消息还可能会建议您联系网站所有者。然而,虽然问题可能是由于网站造成的,但也可能与浏览器有关。
    错误变体:
    ERR_SSL_VERSION_OR_CIPHER_MISMATCH
    更多信息

    如何修复“SSL_ERROR_NO_CYPHER_OVERLAP”错误

    您可能会在网络上遇到各种与浏览器相关的问题。如果您使用的是Mozilla Firefox浏览器,那么这些潜在问题之一就是SSL_ERROR_NO_CYPHER_OVERLAP错误。与任何错误一样,它既令人沮丧又令人担忧,尤其是当您不知道是什么导致错误时。

    您可以采取一些简单的步骤来排除故障并解决此问题。更好地了解此错误背后的原因将有助于您立即修复它。

    在这篇文章中,我们将解释SSL_ERROR_NO_CYPHER_OVERLAP错误的含义及其一些可能的原因。然后,我们将向您介绍如何使用三种可能的方法修复它。

    1. 什么是“SSL_ERROR_NO_CYPHER_OVERLAP”错误?
    2. 修复“SSL_ERROR_NO_CYPHER_OVERLAP”错误的3种方法

    什么是“SSL_ERROR_NO_CYPHER_OVERLAP”错误?

    与其他浏览器错误不同,SSL_ERROR_NO_CYPHER_OVERLAP错误专门发生在Firefox中。谷歌浏览器有一个类似但略有不同的版本,其消息为“ ERR_SSL_VERSION_OR_CIPHER_MISMATCH ”。

    简而言之,当Firefox无法从您尝试访问的网站获取安全数据时,就会发生此错误。通常,当您尝试访问的站点较旧并且没有更新的安全套接字层 (SSL) 保护时,就会发生这种情况。

    如果您不熟悉,SSL是您的计算机和网站服务器之间的加密。如果您遇到此错误消息,则表示您的浏览器无法安全地在它们之间进行通信。重要的是要注意SSL本质上与传输层安全性 (TLS) 相同,稍后会再次出现。

    “SSL_ERROR_NO_CYPER_OVERLAP”错误的潜在原因

    除了错误消息外,Firefox可能还会向您显示“无法验证数据的真实性”。如果是这样,该消息还可能会建议您联系网站所有者。然而,虽然问题可能是由于网站造成的,但也可能与浏览器有关。

    更具体地说,您的Firefox版本或您的特定浏览器设置之一可能会导致网站和您的计算机之间出现错误通信。另一个潜在原因可能是禁用或错误配置TLS或SSL3设置。

    此外,您的浏览器和服务器必须同意相同的加密密码才能连接。由于存在漏洞,主要浏览器不再支持某些密码,例如RC4。如果您尝试连接的网站的服务器使用不受支持的加密方法,您可能会看到此错误。

    一些用户报告在安装Cloudflare后遇到此错误。这通常是因为浏览器不支持Cloudflare 的SSL证书使用的服务器名称指示 (SNI) 协议

    修复“SSL_ERROR_NO_CYPHER_OVERLAP”错误的3种方法

    现在我们对这个问题有了更多的了解,是时候修复它了。以下是可用于解决Firefox中的SSL_ERROR_NO_CYPHER_OVERLAP错误消息的三种潜在解决方案。

    1. 更新您的Firefox浏览器

    解决此错误的第一个也是最直接的方法是确保您使用的是最新版本的Firefox浏览器。为了让您的互联网体验尽可能顺畅,您应该经常这样做。

    要将您的 Firefox 浏览器更新到最新版本,请打开浏览器,单击汉堡菜单图标,然后导航至“帮助” >“关于Firefox”

     

    浏览器菜单中的“关于Firefox”选项

    浏览器菜单中的“关于Firefox”选项

    如果有任何可用更新,Firefox应立即开始下载它们:

     

    Firefox浏览器会通知用户正在下载更新

    Firefox浏览器会通知用户正在下载更新

    下载完成后,单击重新启动以更新Firefox按钮:

     

    Firefox“重启更新”选项

    Firefox“重启更新”选项

    或者,您可以从Firefox 网站获取最新版本的浏览器。在下载之前,请记住从计算机上卸载当前版本。

    要在Windows上执行此操作,请单击Windows + R键,然后在搜索框中键入“appwix.cpl”并按Enter。在程序管理器下,找到Firefox,右键单击它,然后选择卸载

    在macOS上,单击顶部工具栏中的前往 > 应用程序。然后将Mozilla Firefox拖到垃圾箱以将其删除。

    2. 重置您的TLS和SSL3设置

    如果您使用的是最新的Firefox版本或更新它没有帮助,您可以尝试的下一步是重置您的TLS和SSL3设置。某些网站需要这些协议才能建立连接。因此,如果您的禁用,这可能是您看到“SSL_ERROR_NO_CIPHER”错误的原因。

    要重置它们,请在Firefox浏览器中打开一个新选项卡,然后在地址栏中键入“about:config”。您可能会看到一条消息:“This might void your warranty!” 或“Proceed with Caution”:

     

    来自Firefox的“谨慎行事”安全警告通知

    来自Firefox的“谨慎行事”安全警告通知

    此警告是Firefox用来防止您意外更改浏览器设置的方式。单击“接受风险并继续”以继续。

    在下一个高级首选项屏幕上的搜索栏中,键入“tls”:

     

    Firefox高级首选项屏幕的搜索栏

    Firefox高级首选项屏幕的搜索栏

    键入这将生成所有TLS配置的列表:

     

    Firefox中的TLS配置列表

    Firefox中的TLS配置列表

    查找任何以粗体显示的值,因为它们是最近更改的值。对于任何粗体值,右键单击它们并选择重置以将它们恢复为默认设置。

    接下来,对SSL3重复相同的过程。在搜索栏中键入“ssl3”,并重置任何最近更改的值:

     

    Firefox中的SSL3配置列表

    Firefox中的SSL3配置列表

    另外,请确保将以下两项设置为false

    • security.ssl3.dhe_rsa_aes_128_sha
    • security.ssl3.dhe_rsa_aes_256_sha

    出于安全目的,阻止这些设置是必不可少的。

    3. 绕过您的安全协议和浏览器配置

    通常,我们建议您不要绕过浏览器安全协议,因为它们的目的是防止您访问不安全的网站。但是,如果您知道您尝试访问的站点是安全站点,则可以通过手动输入密码验证来绕过此错误。

    为此,请返回到Firefox 浏览器中的about:config屏幕。再次,在搜索栏中输入“tls”。从列表中,导航到security.tls.version.min

    在Firefox浏览器中找到security.tls.version.min首选项

    在Firefox浏览器中找到security.tls.version.min首选项

    单击最右侧的铅笔图标以编辑项目,然后输入“0”作为值。接下来,对security.tls.version.fallback-limit重复相同的过程

    绕过加密协议的最后一种方法是更改浏览器的隐私设置。为此,请打开Firefox菜单,然后导航至选项>隐私和安全

     

    Firefox设置中的隐私和安全菜单选项

    Firefox设置中的隐私和安全菜单选项

    安全部分下,取消选择阻止危险和欺骗性内容

     

    Firefox设置的“安全”部分

    Firefox设置的“安全”部分

    希望此时您已成功解决了错误。但是,如果不是,则很可能是服务器端问题。大多数情况下,当站点使用RC4-only密码套件时会发生这种情况。

    由于存在漏洞,主要浏览器不再支持某些密码,包括RC4。您可以运行SSL检查以验证您的SSL证书没有使用过时的密码。

    如果您不是网站所有者,唯一要做的就是与他们联系以确保他们知道问题所在。

    小结

    被拒绝访问您试图查看的网站从来都不是一件有趣的事情。当您面前的错误消息与SSL_ERROR_NO_CYPHER_OVERLAP错误一样令人困惑时,这可能会特别令人沮丧。幸运的是,您可以采取一些简单的步骤来解决这个与Firefox相关的问题:

    1. 将您的Firefox浏览器更新到最新版本。
    2. 重置您的TLS和SSL3设置。
    3. 绕过您的安全协议和浏览器配置。
  • 如何修复“Your Sitemap Appears to Be An HTML Page”错误

    错误类型:
    WP内部错误
    错误名称:
    您的站点地图似乎是HTML页面
    英文名称:
    Your Sitemap Appears to Be An HTML Page
    错误描述:
    通常,其中一些信息位于您的主站点地图中。其他人必须有他们特殊的专用站点地图。最后,它们都需要适当地格式化为XML或其他支持的格式,而不是HTML。

    如何修复“Your Sitemap Appears to Be An HTML Page”错误

    WordPress中的错误消息往往令人困惑且难以解决,但幸运的是,“您的站点地图似乎是HTML页面(Your sitemap appears to be an HTML page)”错误并不是其中之一。

    如果您遇到过这个问题,您可能想知道这个错误是什么意思,您的站点地图是HTML有什么问题,以及如何解决这个问题。如果您的站点地图已经采用正确格式,但您仍然看到此错误怎么办?

    我们将带您了解所有内容:站点地图的工作原理、它应采用的格式以及解决此问题的几种不同方法。

    1. 什么是站点地图?
    2. 如何生成XML站点地图
    3. 如何修复站点地图错误
    4. 您真的需要站点地图吗?

    什么是站点地图?

    您知道搜索引擎如何找到您的网站吗?答案是使用一个叫做网络爬虫的方便的小机器人——一种由搜索引擎发送的自动化工具,用于索引您网站的页面。

    网络上有数百万个页面,人类不可能收集有关每个站点的信息。网络爬虫通过互联网,缓存每个页面和媒体上的信息。

    这看起来很简单,但Google不会自动知道您何时向网站添加新页面,例如何时发布博客文章或在您的商店中发布新产品。他们会定期发送网络爬虫访问您的网站并查看是否有任何更改,但该过程不是即时的。

    当您拥有一个庞大的网站时,即使经过多次访问,爬虫也很容易错过关键页面。当此类页面不经常链接时,这主要是一个问题。

    这就是站点地图可以帮助爬​​虫的地方。这些XML文件不同于您网站上的常规页面;它们通常是人类无法读取的,也不应该被访客看到。但是网络爬虫可以使用它们来确保所有内容都被索引。

    XML站点地图的示例

    XML站点地图的示例

    它们的工作方式是简单地列出您网站上的所有页面及其链接层次结构,以及您网站上的其他文件,例如图像和视频。它可确保Google看到您网站上的所有内容并相应地改进SEO。

    如果您使用过诸如Google Analytics或Google Search Console 之类的工具,那么您可能已经看到链接到站点地图的选项。当Google将网络爬虫发送到您的网站时,他们会首先引用此信息。

    Google Search Console的主页

    Google Search Console的主页。

    HTML和XML站点地图之间的差异

    所以你的站点地图是一个HTML页面,但究竟有什么问题呢?为什么谷歌要你改变它?

    站点地图必须以特定格式编写,以便网络爬虫能够理解它们。大多数情况下,它需要是一个XML文件。他们也可以阅读RSS、Atom、KML或文本文件,但XML是最常见的选择。

    RSS Feed的示例

    RSS Feed的示例

    XML代表“可扩展标记语言”。它是一种与HTML非常相似的网络语言。不同之处在于它的用途:虽然它是人类可读的,但它的主要功能是帮助机器编码文档和读取数据。

    在这种情况下,它可以帮助网络爬虫了解您网站上的页面和其他媒体的位置以及它们如何相互交互。

    但是您可能已经在非常不同的上下文中看到过“站点地图”这个词。HTML站点地图确实存在,但最大的区别在于它们是为人类制作的,而不是为网络爬虫制作的。

    如果您曾经单击过站点导航的链接,并在该站点上找到了人类可读且设计精美的页面列表,那么这在技术上称为站点地图。但是,虽然它可以对您的访问者有所帮助,但这并不是Google所寻找的。

    对于大多数用户来说,XML站点地图看起来像是一堆不可读的代码或一堵巨大的链接墙,因此如果您想向您的站点添加一个有用的导航页面,请随意在其旁边创建一个HTML站点地图……但您必须创建一个XML站点地图也是如此。

    站点地图示例

    站点地图示例

    其他类型的站点地图

    当您想到站点地图时,您想到的可能是您站点上的页面的简单列表。但谷歌使用几种不同类型的站点地图来对各种信息进行编目。这些包括:

    • 视频:您网站上的视频可以特别编入索引以显示在Google视频结果中。
    • 图像:图像也是如此。某些图像,例如嵌入在Javascript代码中的图像,通常不会编入索引。图片站点地图有助于确保您的站点出现在Google图片中。
    • 新闻:写专栏?Google在其搜索中设有专门的Google新闻部分,而新闻站点地图可以确保您正确地出现在该部分并获得更多流量。
    • 代码谷歌索引代码片段以帮助程序员搜索代码和文件
    • 地理数据:您可以使用特殊的KML站点地图向Google提供关于您的业务所在位置的更好数据。

    通常,其中一些信息位于您的主站点地图中。其他人必须有他们特殊的专用站点地图。最后,它们都需要适当地格式化为XML或其他支持的格式,而不是HTML。

    如何生成XML站点地图

    如果您有意提交了指向HTML站点地图的链接,则需要将其替换为XML文件。如果您不知道如何制作,可以通过多种不同的方式使用WordPress插件和生成器来创建它,您可以在网上找到这些插件和生成器。

    即使您的XML站点地图无法正常工作,重新生成或提交不同的站点地图也可以解决问题。

    获取站点地图有两种简单的方法:使用插件或使用站点地图生成插件。

    使用插件生成站点地图

    使用WordPress,在您的网站上获取动态更新站点地图的最简单方法是下载插件。这样,您就不必手动将任何文件上传到您的服务器。

    有很多插件可以生成站点地图:

    • Yoast SEO存储库中最受欢迎的SEO插件还附带生成站点地图。您可以在SEO > General > Features and XML Sitemaps下找到设置。
    • RankMath除了普通的站点地图,这个SEO插件还可以生成WooCommerce站点地图和KML地理数据站点地图。转到RankMath > Sitemap Settings
    • XML Sitemaps顾名思义,XML Sitemaps会生成一个站点地图。该插件是100%免费和开源的,因此没有隐藏费用。
    • XML Sitemap & Google News此插件生成XML站点地图和Google新闻站点地图。安装和设置也毫不费力。
    • Companion Sitemap Generator – HTML & XML如果您想在XML站点地图旁边生成HTML站点地图,这是适合您的插件。两者都会自动更新,因此您无需进行任何手动工作。
    • Smart SEO Tool:这是闪电博专门针对国内站长开发的WordPress SEO优化插件,附带Sitemap生成支持。注:国外大部分Sitemap插件生成的网站地图不适用于百度搜索资源平台。

    站点地图生成器网站生成Sitemap

    除了插件,您还可以使用站点地图生成器,例如XML-SitemapsXML Sitemap Generator。然后您可以将其上传到您的网站。

    第 1 步:使用上述站点之一或您选择的任何生成器生成站点地图。下载XML文档。

    XML-Sitemaps生成器

    XML-Sitemaps生成器

     

    第 2 步:下载FileZilla或(如果支持)使用您的网络主机通过FTP连接到您的站点。

    第 3 步:将XML文件放入站点的根文件夹中。根目录是您站点的最顶层目录 – 与您第一次连接时开始的目录相同。

    与基于插件的站点地图不同,网站生成的站点地图不是动态的。当您在网站上发布新帖子和页面时,静态站点地图不会更新。您每次都需要制作一个新文件。所以对于更新频繁的博客等网站来说,并不理想。

    如何修复站点地图错误

    站点地图错误通常是由意外提交HTML页面而不是格式正确的XML文件引起的。但是如果您的XML站点地图仍然声称是HTML页面,那么您可能会遇到更深层次的问题。

    不用担心:问题通常在于您的WordPress插件中易于修复的冲突。以下是一些让您的站点地图再次正常工作的建议。

    检查错误和重定向

    如果您有明确的错误代码要搜索,则诊断问题会容易得多。您应该做的第一件事是访问您的站点地图页面,看看是否有任何奇怪的错误代码。

    404错误页面示例

    404错误页面示例

    如果您在访问站点地图时发现错误,这将导致Google认为它看到的是HTML页面。使用此错误来帮助您搜索以解决问题。我们的HTTP状态代码列表可能会有所帮助。

    如果您间歇性地注意到站点地图错误 – 有时出现有时不出现怎么办?如果您动态生成站点地图,则可能会发生这种情况。

    次要服务器blip和超时会读给Google,就像您的站点地图突然变成HTML页面一样,因为它显示的是错误消息而不是XML文件。只要错误很少见,不是持续发生或频繁发生,通常就不必担心。

    另一件需要注意的事情是重定向。如果您访问站点地图页面并突然进入主页或无限重定向循环,这也会导致事情中断。

    如果您发现任何不会消失的错误或重定向,则问题通常在于插件冲突。生成站点地图的插件(例如 Yoast)可能会导致冲突,或者缓存插件可能是问题的根源。

    但有时,即使是看似随机的插件也会引起冲突。使用Health Check & Troubleshooting插件来识别它们。

    安装后的Health Check & Troubleshooting插件

    安装后的Health Check & Troubleshooting插件

    如果它不存在,请安装它,然后转到工具 > 站点健康 > Troubleshooting Mode。它会暂时关闭所有插件,而不会影响您的访问者。

    查看错误或重定向现在是否在您的网站上消失了。如果是,请一一重新启用插件,直到站点再次中断。查找多个插件之间的冲突。

    您现在可以联系插件作者报告错误并寻求帮助。

    禁用缓存

    冲突的最大原因之一是缓存插件。当站点地图被缓存时,有时会导致Google将其作为HTML页面读取时出现问题,因为您不应该以这种方式缓存XML文件。

    大多数缓存插件会因此避免缓存站点地图页面,但无论如何它们可能会错误地这样做,尤其是当您为站点地图使用唯一的URL时。

    幸运的是,您不需要禁用整个缓存插件。您可以添加一个例外,问题应该会自动清除。

    您的插件文档应该涵盖这一点,但这里是如何在WP Super CacheW3 Total Cache中做到这一点。

    • 对于WP Super Cache,请转至设置 > WP Super Cache。在Advanced选项卡下,滚动到Add here strings (not a filename) that force a page not be cached。在此部分中,输入站点地图的部分URL。例如,如果您的站点地图位于“example-site.com/sitemap.xml”,请输入“/sitemap.xml”。
    • 对于W3 Total Cache,导航到Performance > Page Cache,然后找到Advanced > Never cache the following pages。就像使用WP Super Cache一样,输入站点地图URL。您可能还会将其添加到Performance > Minify下面的Never minify the following pages,因为对XML文件进行Minify这可能会导致问题。

    检查您的站点地图URL

    虽然这是一个小建议,但始终值得仔细检查:您提交的链接是否正确?这是一个基本的错误,即使一个不正确的字符也会指向错误的地方。

    检查您通过Google以及任何SEO或站点地图插件提交的链接。

    一些插件可能会在站点地图页面的末尾添加一个斜杠(“example-site.com/sitemap/”而不是“example-site.com/sitemap”)。这一个字符可能会导致大量问题,尤其是当它导致重定向循环时。

    同样,在Health Check插件中打开故障排除模式并尝试查找导致此问题的插件。大多数情况下,您可以将其追溯到一个单独的插件。

    删除额外的站点地图

    虽然只要您链接到正确的页面,它通常不会引起问题,但激活额外的站点地图有时可能会给您自己带来问题或困惑。此外,您的服务器正在花费额外的资源来更新几个不必要的站点地图。

    插件可能会添加不同的站点地图,您可能不知道 WordPress 甚至会为您生成自己的站点地图。您应该检查这些并删除除您要使用的之外的所有内容。您可以在您的网站上尝试以下几个网址:

    • /sitemap.xml — 大多数站点地图插件中生成的站点地图的常见选择。
    • /wp-sitemap.xml — 这是自5.5版以来WordPress生成的默认站点地图
    • /sitemap_index.xml — Yoast生成的站点地图的URL。

    如果您下载了其他SEO或站点地图插件,它们可能完全使用不同的URL。检查文档并确保禁用任何不需要的站点地图功能。

    您真的需要站点地图吗?

    有时站点地图可能会莫名其妙地成为不断出现问题的根源。一个简单的修复可能不足以让它们消失。如果您不断遇到难以解决的问题,您可能会开始质疑站点地图是否对您至关重要。

    通常鼓励创建站点地图,因为谷歌自己说它永远不会因为这样做而惩罚你的搜索引擎优化。它只能帮助改善您的搜索引擎优化并使您的网站更快地被索引。

    但是在某些情况下并不要求您拥有它们,并且Google本身建议某些网站不要使用它们。

    假设您的网站页面少于500个,并且不可能超过这个数量。在这种情况下,只要内部链接良好(无论如何您都应该这样做)并且没有很多您想要在Google图片和Google视频中显示的媒体文件,您可能根本不需要站点地图。

    另一方面,它确实可以帮助您的SEO拥有站点地图,并且拥有站点地图并没有什么害处,因此推动并解决问题只会有好处。您的网站现在可能很小,但可能不会总是如此。

    小结

    “站点地图似乎是一个HTML页面”错误可能是一个令人讨厌的错误,但通常只是格式不正确的页面或易于修复的缓存冲突的结果。一旦你弄清楚了问题,解决它只是几个额外步骤的问题。

  • 如何修复错误:“无法安装这个包。主题缺少style.css样式表”

    错误类型:
    其他错误
    错误名称:
    无法安装这个包。主题缺少style.css样式表。
    英文名称:
    The package could not be installed. The theme is missing the style CSS stylesheet.
    错误描述:
    这个特定的主题上传错误显示在WordPress仪表板的外观 > 主题 > 安装主题 > 上传主题下。

    如何修复错误:“无法安装这个包。主题缺少style.css样式表”

    您为WordPress网站下载了一个漂亮的新主题,并尝试将其上传到WordPress仪表板。不幸的是,主题无法安装并显示以下错误:“无法安装这个包。主题缺少style.css样式表。”

    在本文中,我们将探讨此错误的原因以及解决方法。我们还将通过深入了解WordPress文件结构的基础知识,以及帮助您确保首先上传正确的文件,向您展示如何在未来避免此错误。

    1. “无法安装这个包”错误在哪里出现?
    2. 当您看到“无法安装这个包”错误时发生了什么?
    3. 看到“无法安装这个包”错误后会发生什么?
    4. 如何修复“主题缺少style.css样式表”错误?

    “无法安装这个包”错误在哪里出现?

    这个特定的主题上传错误显示在WordPress仪表板的外观主题 > 安装主题上传主题下。

    它主要发生在您单击“选择文件”按钮,选择要上传的文件,然后单击“立即安装”按钮之后。简而言之,该错误是安装主题模块独有的,因此您不应在WordPress的其他任何地方看到它。

    单击“立即安装”按钮

    单击“立即安装”按钮

    错误文本本身,内容为“无法安装这个包。主题缺少style.css样式表,”被放置在主题安装状态消息中,就在另一条消息告诉您“主题安装失败”之前。

    缺少样式表错误

    缺少样式表错误

    当您看到“无法安装这个包”错误时发生了什么?

    计算机屏幕上的错误几乎可以准确地告诉您正在发生的事情,这是一种罕见的情况。在第二行中,它指出:“主题缺少style.css样式表。”

    简而言之,您尝试通过将WordPress主题上传到您的WordPress仪表盘来安装它。它包含一个 .zip 文件,其中包含一个复杂的主题文件目录,其中包含编码、样式表以及管理和呈现仪表板、前端界面和许多其他WordPress元素的职责。

    该错误特别表明style.css样式表不在该WordPress文件集合中,或者WordPress由于您上传的文件不正确而难以找到该样式表。

    简而言之,错误是因为检测不到style.css文件。它的发生是由于以下原因之一:

    • style.css文件不存在于主题的根目录,可能主题开发者犯的错误。
    • style.css不存在于文件目录,因为你不小心在某个时候将其删除。
    • style.css文件实际上在根目录下,但是你有没有正确上传目录到WordPress。当您在上传之前未解压缩文件时,有时会发生这种情况。
    • 您正在尝试上传不属于WordPress的文件 – 它可能根本不是主题文件。

    什么是style.css样式表?

    您的WordPress文件目录包含许多文档和文件夹,包括PHP、CSS和HTML编码。

    CSS,或级联样式表,是指与PHP和HTML结合使用的网页设计语言。CSS使用颜色、格式和字体对静态网页设计元素进行风格化。简而言之,CSS使您的网站内容看起来很漂亮。

    一个基本示例涉及您网站上的一个简单图像。HTML仅在样式方面走得更远。尽管如此,CSS通过将图像移动到页面上的任何位置、添加边距、填充、背景和许多其他元素的选项来增强您的设计可能性,从而使您的内容更加直观。

    但是,style.css不能单独工作。它与WordPress中的所有目录交互,并且经常与其他编程语言协同工作以产生所需的结果。

    style.css样式表应该在哪里?

    style.css是所有WordPress主题的一部分。由于它是WordPress控制站点视觉设计和布局的主要方式,因此它是必需的文件。

    这意味着无论何时购买或下载主题,您都应该在主题文件中找到style.css样式表。

    注意:您通常需要解压缩主题文件包才能查看主题文件。

    例如,我们下载了Hello Elementor主题并打开主题文件以显示文件和文件夹列表,包括style.css

    查找style.css样式表

    查找style.css样式表

    打开style.css会显示其内容,从作者的主题名称等基本信息开始。您会注意到它告诉您不要更改此文件的任何部分,因为许多主题更喜欢您在仪表板或其他自定义目录中进行CSS修改。

    style.css样式表示例

    style.css样式表示例

    向下滚动,style.css样式表会显示一长串CSS片段,所有这些片段组合在一起使您的主题看起来如此。

    style.css样式表中的CSS代码

    style.css样式表中的CSS代码

    因此,style.css样式表应该位于每个主题文件目录中,通常位于其他CSS文件附近以及资源和模板文件夹附近。

    看到“无法安装这个包”错误后会发生什么?

    没有style.css样式表的主题文件夹是无用的,至少在将其上传到WordPress并制作功能齐全的主题时是这样。

    上传根目录是不可能的,因为WordPress会阻止所有尝试上传没有style.css样式表的文件。原因是缺少样式表可能会破坏或损害整个WordPress基础设施。

    此外,您还会收到错误消息:“无法安装这个包。主题缺少style.css样式表。”

    好消息是之前在您的 WordPress 网站上激活的任何主题仍然存在。对您的网站没有任何损害,您也无法上传新主题。

    但是,您可能想要替换当前主题,因此必须通过以下解决方案来更换旧主题并安装新主题。

    如何修复“主题缺少style.css样式表”错误?

    在本节中,我们将概述看到缺少样式表错误的两个主要原因,以及有关如何解决这些问题的信息。

    如何解决主题缺少Style.css文件的情况

    缺少style.css文件意味着以下两种情况之一:主题开发人员(可能是您)未能将其包含在根目录中,或者您自己无意中删除了style.css文件。

    对于第一种情况,我们建议采取以下行动:

    1. 联系主题开发人员并将问题反馈他们:虽然不太可能,但您可能下载错误或开发人员端的某人/某事出错。信誉良好的主题开发人员应该会给您一个新主题文件的快速响应。
    2. 寻找新主题:这很可能是最好的做法,因为高质量的主题开发人员很少会错过最关键的部分之一。也许您从粗略的来源或正在学习如何编码的初学者下载了一个主题。

    您可以添加一个style.css,但这首先违背了使用预制主题的目的。更不用说,本来有样式表但现在缺少样式表的主题将无法正常工作。

    如何解决WordPress无法识别style.css表的情况

    有时,当您尝试将它上传到仪表板时,WordPress无法识别主题目录中的style.css

    造成这种情况的原因包括:

    • 您没有正确上传主题。
    • 您必须从开发人员那里解压缩原始文件以显示主题文件。
    • 主题文件不适用于WordPress。
    • 该文件不是主题文件,而是其他文件。
    • style.css是不是在根目录中的正确位置。

    其中一些原因可能看起来很简单,但往往最表面的原因会导致令人沮丧的问题。

    查看以下部分,了解如何根据根本原因解决这些情况。

    正确上传主题

    您可能会看到“无法安装这个包。主题缺少style.css样式表。” 错误是由于您上传主题文件的过程。

    新用户,甚至是有经验的用户,可能会不小心偏离上传主题文件的最佳步骤。

    请阅读我们关于安装WordPress主题的教程,以确保您遵循正确的步骤。这篇文章涵盖了寻找最佳WordPress主题和安装方法,例如通过仪表盘或FTP。它还指导您通过安装免费和高级主题的方式略有不同。

    查看主题文件是否需要解压

    许多主题上传错误是由于压缩下载文件而发生的。对于考虑WordPress只接受压缩文件的人来说,这有点令人困惑。

    但是,一些主题开发人员在压缩文件中给您一个压缩文件,您必须解压缩原始包才能找到仅包含主题内容的有效上传文件。

    例如,您可能会发现主题开发人员将其他文档打包到原始下载中,因此WordPress会查看所有这些内容并想知道实际的主题文件在哪里。

    尽管大多数著名的主题开发人员都知道这令人困惑,但我们偶然发现了一种罕见的情况,您必须解压缩第一个主题下载才能查看用户手册和其他内容等内容。

    除了在上一点中以错误的方式上传主题文件之外,这是您在查看其他方法之前应该解决的第一个问题,因为它很容易修复并且主题开发人员仍然有些熟悉这样做。它也仅在您从第三方开发人员处购买主题时才会发生,看看WordPress.org主题库如何限制奇怪打包的主题文件。

    因此,假设您从第三方开发人员上传了一个压缩文件,却发现您收到错误消息:“无法安装该软件包。主题缺少style.css样式表。”

    很有可能您所要做的就是解压缩主题开发人员提供的原始文件,以在其中提取另一个ZIP文件。

    “无法安装这个包”错误

    “无法安装这个包”错误

    要解决此问题,请转到您最初从主题开发人员处下载的文件。

    它很可能是一个ZIP文件,这对于将其作为主题上传到WordPress是有意义的,但它可能包含其他内容文件,这些文件会使文件夹变得混乱并使WordPress难以识别主题文件。

    找到主题的压缩下载文件

    找到主题的压缩下载文件

    因此,打开或解压缩文件以提取其中的任何内容。通常通过右键单击并选择您喜欢的解压缩或存档实用程序来完成。

    解压下载的主题包

    解压下载的主题包

    现在,打开解压缩的文件以显示其内容。正如您在此示例中看到的,主题开发人员在主题下载的根目录中包含了一个readme.txt文件和另一个内容文件夹。他们在这个区域也有真实的压缩主题文件。这是您需要上传到WordPress的实际主题文件。

    返回外观>主题>安装主题>上传主题以从您的计算机中选择一个文件。然后,确保您选择了没有任何额外内容的压缩主题文件(如本示例中的自述文件)。

    实际的主题文件

    实际的主题文件

    请记住,您可能会在完成此故障排除过程后发现主题打包奇怪的问题。如果您在开发人员的原始主题包中没有看到压缩的主题文件,请考虑查看下面的其他故障排除提示。

    弄清楚主题文件是否适用于WordPress

    在线存在许多网站主题。看到您喜欢的主题设计,只是购买它并发现它实际上并不适用于WordPress,这种情况并不少见。例如,ThemeForest市场为各种内容管理系统和网站建设者(包括Drupal、Joomla、Webflow和Shopify)销售网站模板。

    每个平台都有其主题的根文件结构,因此WordPress将拒绝上传用于其他系统(如Bigcommerce或Magento)的主题的任何尝试。

    请记住,对于这种情况,您可能会看到“主题缺少style.css样式表”错误。毕竟,来自Shopify或Drupal的主题目录可能会将其style.css位于不同的位置。但是,您可能还会看到另一个错误。

    至于解决这个问题,您所要做的就是摆脱不兼容的主题文件并选择一个新的主题文件。

    将来,请仔细查看所有主题产品页面,以确保它们适用于WordPress而不是其他内容。例如,大多数ThemeForest和其他高级主题产品页面会在页面上多次显示主题所在的平台。查看页面上的类别、标题和图像。

    在产品页面上寻找“WordPress”的提及

    在产品页面上寻找“WordPress”的提及

    大多数主题卖家还包含一个区域,其中包含该主题的软件类型或版本。再次,看看WordPress是列出的主要软件。

    查看WordPress软件版本

    查看WordPress软件版本

    或者您可以坚持使用WordPress.org主题目录上提供的主题。

    如果您在网上找不到有关该主题的任何信息,请查看主题目录以了解它的情况。尽管每个WordPress主题目录都有不同的配置和文件,但您可以通过查找某些特定文件来了解它是否实际上是WordPress主题。

    所有WordPress主题在根目录中都有style.css。您还应该看到资产文件夹和模板的潜在文件夹。查找index.phpfooter.phpsidebar.php等文件。您有时会在其他平台的主题中看到这些,但它们通常被赋予不同的名称或位于其他地方。

    确保样式表位于正确的位置

    确保样式表位于正确的位置

    弄清楚它是否是主题文件

    您可以将多种类型的压缩文件夹上传到WordPress,有时很难查看它是否是主题文件。从表面上看,插件文件与主题文件没有什么不同。

    您可以对来自另一个WordPress网站或Tumblr或Blogger等平台的网站导入文件说同样的话。您可能还会发现您正在尝试上传WooCommerce产品或WXR文件以导入文章和页面等项目。列表还在继续,但我们的想法是这些文件中没有一个与WordPress主题文件相同。

    因此,首先仔细检查您上传的内容很重要。可以单击计算机上名称相似的文件类型,或者您无法区分最近下载的插件文件和大约同时下载的主题文件。

    避免这种情况的主要方法是在保存和上传WordPress文件时保持组织和专注。确保将主题文件保存在令人难忘的位置,并在下载到您的计算机时知道文件的名称。

    区分主题文件和其他面向WordPress的文件的另一种方法是了解每个文件的文件结构。

    我们建议阅读我们的WordPress文件指南并使用它们,尤其是WordPress主题目录部分。通过这种方式,您可以建立有关WordPress文件夹结构的知识,并在您看到文件内容时确定文件的作用。

    对于这种情况,请打开您尝试上传的文件并确保它看起来像一个主题文件。

    假设我们有两个文件,我们不记得主题的具体名称。您可能无法决定应该将两者中的哪一个上传到WordPress。我们知道其中一个是插件文件,另一个是主题文件。首先解压缩它们以查看里面的内容。

    决定哪个文件用于主题

    决定哪个文件用于主题

    分别打开每个文件以分析内容。

    打开每个文件目录

    打开每个文件目录

    该文件包含插件、资源、区块和类等文件夹。它不包括标准主题文件夹和文件。尽管所有插件文件看起来都有些不同,但可以肯定地说,这看起来更像是插件而不是主题。

    这个目录看起来像一个插件

    这个目录看起来像一个插件

    另一个文件显示了大量文件夹和PHP文件。style.css文件在那里,主题要领等一起footer.phpheader.php的sidebar.php。在主题文件中看到CSS、字体和模板部件的文件夹也相对常见。

    因此,这是我们要找的主题文件,另一个是插件。以后请留意主题文件的经典属性,以确保您上传合适的文件。

    主题文件的示例

    主题文件的示例

    确保style.css文件在正确的位置

    无论是您自己还是开发人员完成的,style.css文件都可能在正确的位置丢失。

    发生这种情况并不重要,只是WordPress在根目录中搜索style.css文件,但找不到它。

    要解决此问题,请检查主题的根文件夹并查找style.css文件。

    我们打开了TwentyTwenty主题的根文件夹,看起来没有style.css样式表的迹象。您可能会在整理时无意中将其拖入其他文件夹之一,因此您至少应该花几秒钟时间点击文件夹以查看它是否在其中。

    根文件夹缺少样式表

    根文件夹缺少样式表

    事实证明,我们已将其移至Templates文件夹。如果style.css表不在根文件夹中,WordPress可能无法识别它,因此将其移回其所属的根文件夹。

    样式表位于错误的位置

    样式表位于错误的位置。

    小结

    缺少style.css样式表错误源于错误的主题文件,并且仅在您尝试在WordPress的“安装主题”部分上传文件时才会出现。

    看到该消息的主要原因包括:

    • style.css文件是由于开发商未将它放置在主题根目录。
    • style.css文件丢失,因为你不小心删除了或移动到其他地方。
    • 您没有以正确的方式上传主题文件。
    • 您必须解压缩文件以显示开发人员提供给您的原始包中的实际主题文件。
    • 主题文件不适用于WordPress,而是适用于Shopify、Joomla或Drupal等其他平台。
    • 该文件不是主题文件。它是其他东西,例如插件文件,甚至是来自您计算机的随机文档或ZIP文件。
  • 如何修复Windows和Mac上的“DNS服务器无响应”错误

    错误类型:
    服务器错误
    错误名称:
    DNS服务器无响应
    英文名称:
    DNS server not responding
    错误描述:
    “DNS服务器无响应”表示您的浏览器无法建立到Internet的连接。通常,DNS错误是由用户端的问题引起的,无论是网络或互联网连接、DNS设置错误还是浏览器过时。它们也可以归因于导致DNS不可用的临时服务器中断。

    如何修复Windows和Mac上的“DNS服务器无响应”错误

    如果不先访问域名服务器 (DNS),您就无法访问网站。在此过程中,您可能会收到诸如“DNS服务器未响应”之类的消息。这意味着负责将主机名转换为IP地址的分散命名系统未能响应。

    发生这些类型的DNS错误的原因有多种。幸运的是,他们中的大多数都有简单的解决方案。事实上,解决问题就像重新启动计算机或更改 Web 浏览器一样简单。

    在这篇文章中,我们将解释“DNS服务器无响应”消息的含义及其一些常见原因。然后,我们将向您介绍如何在Windows和macOS设备上修复它的几种解决方案。

    1. DNS服务器无响应是什么意思?
    2. 如何修复Windows和macOS中的DNS服务器无响应错误

    DNS服务器无响应是什么意思?

    DNS是一种命名系统,它采用字母数字域名(或“主机名”)并将其转换为数字IP地址。本质上,DNS服务器充当翻译器。

    当您在浏览器中输入网址时,它会从您的路由器转发到DNS服务器,然后在那里分解并作为IP地址返回。但是,如果DNS服务器无法正确完成此名称解析过程,最终结果通常是一条消息,表明DNS服务器没有响应。

    “DNS服务器无响应”表示您的浏览器无法建立到Internet的连接。通常,DNS错误是由用户端的问题引起的,无论是网络或互联网连接、DNS设置错误还是浏览器过时。它们也可以归因于导致DNS不可用的临时服务器中断。

    因此,您可能只需切换浏览器即可解决问题。在其他情况下,您可能需要禁用连接、更改DNS服务器或刷新DNS缓存。

    如何修复Windows和macOS中的“DNS服务器无响应”错误

    现在您已了解此消息的含义并熟悉一些潜在原因,现在是开始着手解决它的时候了。让我们来看看您可以在Windows和Mac设备上修复“DNS服务器无响应”的十种潜在方法。

    1. 切换到不同的浏览器

    第一步是通过测试您的DNS连接来解决问题。解决这个问题可能就像切换或更新您的Web浏览器一样简单。

    为此,请尝试从其他浏览器访问网络。例如,如果您的默认浏览器是Safari或Google Chrome,请改为从Mozilla Firefox或Microsoft Edge访问所需的网站。

    如果切换浏览器有效,您可能需要将默认浏览器更新到最新版本或卸载并重新安装。但是,如果您仍然看到“DNS服务器无响应”消息,则可以排除您的浏览器是问题的根源。

    2. 以安全模式启动您的计算机

    如果您的操作系统运行不正常,可能会导致“DNS服务器无响应”错误消息。因此,您可能想尝试以安全模式启动Windows设备,看看这是否能解决此问题。

    这样做将限制用于运行Windows的文件和资源,并且可以成为解决问题的有效方法。

    要以安全模式启动Windows 10计算机,请先选择Windows按钮,然后将鼠标悬停在电源图标上:

    Windows中的电源按钮

    Windows中的电源按钮

    接下来,在按住Shift 键的同时,选择Restart

    Windows重新启动选项

    Windows重新启动选项

    在出现的窗口中,单击疑难解答 > 高级。在Advanced options(高级设置)下,选择Start-Up Settings(启动设置),然后选择Restart(重启)。将出现更多选项。您可以分别按4或5启用安全模式启用网络安全模式 。然后您的计算机将以安全模式重新启动。

    如果您使用的是Windows 7或更早版本,则可以通过转到“电源”>“重新启动”以安全模式重新启动它。然后,在启动时按住F8键

    该过程在macOS设备上类似。

    在机器重新启动和启动时,按住Shift键。一旦出现Apple标志,您就可以释放它。然后您的设备将以安全模式启动。

    一旦您的计算机处于安全模式,请尝试再次访问该网站。如果似乎没有网络连接问题,则问题的根源可能是第三方软件或安装,例如防病毒应用程序。

    3. 暂时禁用您的防病毒软件和防火墙

    如果切换浏览器不能解决“DNS服务器无响应”问题,下一步是暂时停用防火墙。防病毒软件和防火墙对于保护您的设备至关重要,但它们有时会导致干扰网络连接的问题。

    对于Windows用户,您可以通过转到控制面板并导航到更新和安全 > Windows 安全 > 病毒和威胁防护 > 管理设置来执行此操作。

    Mac用户可以通过导航到System Preferences(系统首选项) > Security & Privacy(安全与隐私) > Firewall(防火墙)来找到这个选项。

    停用防火墙后,请尝试从浏览器再次访问该网站。如果这解决了问题,您可以考虑切换防病毒程序或重新配置现有应用程序的设置。无论哪种方式,请记住在完成后重新激活防火墙。

    4. 禁用辅助连接

    如果禁用防病毒软件或防火墙没有解决问题,另一个可能的解决方案是禁用设备上可用的任何辅助连接。您想确保只有您当前使用的连接处于活动状态。

    要在Windows中执行此操作,请在桌面任务栏的搜索框中键入“网络连接”。接下来,单击查看网络连接

    Windows网络连接

    Windows网络连接

    这将带您进入网络连接页面。您当前未使用的任何连接旁边都会有一个红色 ( X )。右键单击一个,然后选择禁用

    在Windows中禁用辅助连接

    在Windows中禁用辅助连接

    对当前未激活的任何其他连接重复此操作。完成后,重新启动浏览器并尝试再次访问该网站。

    如果您使用的是macOS,则可以通过单击Apple图标,然后导航到System Preferences(系统首选项) > Network(网络)来执行此操作。您的连接将列在窗口的左侧。

    macOS网络设置

    macOS网络设置

    要断开连接或禁用一个,请选择它,然后单击窗口底部的 (  ) 符号。

    5. 禁用Windows对等功能

    如果您使用的是Windows,并且禁用防火墙或辅助连接还没有解决“DNS服务器无响应”错误消息,则您可以尝试另一种选择:点对点 (P2P) 功能。注意:这是您只能在Windows 10中找到的内容。

    此功能有助于保留设备的下载带宽。从本质上讲,它允许您一次性下载 Windows 更新,然后使用您的设备在本地网络中包含的其他计算机上传播或共享更新版本。

    不幸的是,它有时也会中断DNS进程。因此,值得禁用以查看这是否能解决您当前面临的错误消息。

    为此,请单击Windows图标,然后单击设置(齿轮图标)  > 更新和安全

    Windows设置中的更新和安全选项

    Windows设置中的更新和安全选项

    在左侧打开的窗口中,选择Delivery Optimization(传递优化设置)

    Windows传递优化菜单

    Windows传递优化菜单

    在“允许从其他 PC下载”选项旁边,切换开关以禁用它:

    Windows P2P功能的切换开关

    Windows P2P功能的切换开关

    完成后,重新启动计算机并尝试再次访问该网站。如果这不起作用,请不要担心。我们还有更多的解决方案可以尝试。

    6. 重启你的路由器

    下一个故障排除步骤是重新启动路由器。这样做将刷新路由器的缓存,并且可能是解决“DNS服务器无响应”消息的解决方案。

    大多数调制解调器都带有电源按钮,可让您快速关闭它们。大约一分钟后,重新打开调制解调器并等待它重新建立连接。完成后,请检查您是否可以从浏览器访问Internet。

    请注意,有时仅重新启动路由器是不够的。您可能希望通过将其完全拔下来重新启动它,然后等待至少 30 秒,然后再将其重新插入并再次打开电源。

    7. 在您的计算机上安装更新的网络适配器驱动程序

    您可能看到“DNS服务器无响应”消息的另一个原因是您当前的 Windows 网络适配器驱动程序是否陈旧或过时。如果是这种情况,获取新的适配器驱动程序或更新您的驱动程序可能是您需要的解决方案。

    有几种方法可以更新您的网络适配器驱动程序。一种是手动完成,只有在您至少熟悉驱动程序的情况下才应该这样做。或者,您可以使用诸如Driver Easy 或Snappy Driver Installer (SDI) 之类的自动化工具来执行此操作:

    Snappy驱动程序安装程序网站

    Snappy驱动程序安装程序网站

     

    这些解决方案中的任何一个都会自动识别您的系统并找到合适的驱动程序供您使用。我们推荐这种方法,因为它消除了人为错误的风险,例如在您的设备上下载或安装错误的驱动程序。

    一旦你下载SDI和完成安装更新的驱动程序,重新启动计算机。然后尝试重新连接到互联网,以确定这是否解决了问题。

    8. 刷新您的DNS缓存并重置IP

    如果您已经消除了浏览器、防病毒软件和路由器作为问题的根源,那么是时候将注意力转向DNS设置了。与路由器缓存一样,您的DNS可能需要清除才能正确连接到互联网,或者您的IP可能需要重置。

    如果您使用的是Windows,首先在任务栏的搜索字段中键入“cmd”,然后选择命令提示符应用程序:

    Windows菜单中的命令提示符应用程序

    Windows菜单中的命令提示符应用程序

    在打开的窗口中,输入“ipconfig/flushdns”(无引号),然后按Enter键

    刷新DNS缓存后Windows中的命令提示符

    刷新DNS缓存后Windows中的命令提示符

    该过程完成后,它将显示一条消息,让您知道DNS缓存已成功刷新。对以下命令重复此过程:

    ipconfig /registerdns
    ipconfig /release
    ipconfig /renew
    ipconfig /registerdns
    ipconfig /release
    ipconfig /renew
    ipconfig /registerdns 
    ipconfig /release 
    ipconfig /renew

    如果您使用的是Mac设备,您可以通过打开终端应用程序来刷新您的DNS缓存(按Command  + Space 键,然后在Spotlight中输入“终端”)。在终端应用程序窗口中,输入以下内容:

    dscacheutil -flushcache
    dscacheutil -flushcache
    dscacheutil -flushcache

    回车 键。不会像Windows设备上那样显示成功消息。但是,简单地运行此命令将刷新DNS缓存。如需进一步指导,您可以参考我们关于如何在Windows、Mac和Chrome中刷新DNS缓存的教程。

    9. 禁用IPv6

    IPv6是最新的 Internet 协议版本,可帮助在网络和Internet之间路由流量。不幸的是,它也可能出现在您当前看到的“DNS服务器无响应”消息之后。

    因此,另一个可以尝试的潜在解决方案是在您的计算机上禁用IPv6。要在Windows中执行此操作,请打开您的网络连接控制面板,然后右键单击您当前的连接。在下拉菜单中,选择属性

    Windows中的网络连接属性菜单选项

    Windows中的网络连接属性菜单选项

    在 打开的面板的网络选项卡下,向下滚动直到看到Internet协议版本 6 (TCP/IPv6):

    Windows网络连接中的Internet协议版本 6 (TCP/IPv6)

    Windows网络连接中的Internet协议版本 6 (TCP/IPv6)

    如果它被选中,取消选中该框,然后单击OK。刷新浏览器并再次尝试连接到Internet。

    要在macOS中禁用IPv6,您首先需要确定您使用的网络接口。为此,请打开终端应用程序,然后发出以下命令:

    networksetup -listallnetworkservices
    networksetup -listallnetworkservices
    networksetup -listallnetworkservices

    如果要为无线连接禁用IPv6,可以使用以下命令:

    networksetup -setv6off Wi-Fi
    networksetup -setv6off Wi-Fi
    networksetup -setv6off Wi-Fi

    对于以太网连接,您将使用:

    networksetup -setv6off Ethernet
    networksetup -setv6off Ethernet
    networksetup -setv6off Ethernet

    然后按Enter 键,并刷新浏览器以查看问题是否已解决。

    10. 更改Windows计算机上的默认DNS服务器

    您可以尝试修复Windows中的“DNS服务器无响应”的另一种解决方案是更改您的默认DNS服务器。要在Windows 7、8或10中执行此操作,第一步是访问您的网络连接属性。

    首先单击任务栏左下角的Windows按钮。在搜索字段中,键入“网络连接”,然后 在出现的菜单中选择“查看网络连接”:

    Windows菜单中的“查看网络连接”控制面板

    Windows菜单中的“查看网络连接”控制面板

    接下来,选择您当前使用的Internet适配器(WLAN用于无线网络连接或LAN用于以太网电缆连接)。右键单击Internet适配器,然后单击属性

    Windows中的网络连接属性菜单项

    Windows中的网络连接属性菜单项

    在打开的窗口中,选择Internet协议版本 4 (TCP/IPv4 ),然后单击属性按钮:

    Windows中的Wi-Fi属性面板

    Windows中的Wi-Fi属性面板

    要手动分配不同的DNS服务器地址,请选择使用以下DNS服务器地址并输入备用服务器的地址:

    Windows中的DNS服务器地址面板

    Windows中的DNS服务器地址面板

    例如,您可以在首选DNS服务器下输入Google的DNS服务器,即“8.8.8.8” 。然后你可以在备用DNS服务器下添加“8.8.4.4” ,然后点击OK

    如果您运行的是macOS,您可以通过依次单击Apple图标和System Preferences(系统首选项)来找到这些设置:

    Mac中的“系统偏好设置”菜单项

    Mac中的“系统偏好设置”菜单项

    接下来,选择网络图标。选择您当前的网络,然后单击高级按钮:

    Mac网络系统窗口中的高级按钮

    Mac网络系统窗口中的高级按钮

    DNS选项卡下,单击 “IPv4或IPv6 地址”旁边的(+)按钮,然后按Enter

    在macOS中输入新的DNS信息

    在macOS中输入新的DNS信息

    当您输入新的DNS信息,请单击上确定 ,随后应用。重新启动Web浏览器,然后访问您尝试访问的网站。您应该会发现“DNS服务器无响应”问题现已解决。

    小结

    试图访问一个网站却只遇到“DNS服务器无响应”消息可能既令人沮丧又令人担忧。虽然发生此错误的原因有多种,但好消息是大多数都有简单的解决方法。

    正如我们在本文中所讨论的,在Windows和macOS中,您可以使用十种潜在的解决方案来修复“DNS服务器无响应”消息:

    1. 切换到其他浏览器,如有必要,将默认浏览器更新到最新版本。
    2. 以安全模式启动计算机。
    3. 暂时禁用您的防病毒软件和防火墙。
    4. 禁用辅助连接。
    5. 禁用Windows对等功能。
    6. 重启你的路由器。
    7. 在您的计算机上安装更新的网络适配器驱动程序。
    8. 刷新您的DNS缓存并重置您的IP。
    9. 禁用IPv6。
    10. 更改计算机上的默认DNS服务器。

    建议阅读:如何修复DNS_PROBE_FINISHED_BAD_CONFIG错误代码如何修复DNS_PROBE_FINISHED_NXDOMAIN错误代码

  • 如何解决Cloudflare加速网站出现Error 520未知错误

    错误类型:
    服务器错误
    错误名称:
    Cloudflare 520错误
    英文名称:
    Error 520
    错误描述:
    当您网站的访问者在他们的浏览器中看到Error 520时,这意味着Cloudflare正在发送消息,因为您的服务器返回了一个空的、未知的或意外的响应。

    如何解决Cloudflare加速网站出现Error 520未知错误

    当您网站的访问者在他们的浏览器中看到Error 520时,这意味着Cloudflare正在发送消息,因为您的服务器返回了一个空的、未知的或意外的响应。

    Error 520可以通过首先进行故障排除来找到原因,然后按照这些步骤进行修复。

    1. 对Error 520进行故障排除
    2. Error 520的常见原因
    3. 再次启用Cloudflare
    4. 如果其他方法都失败了怎么办

    对Error 520进行故障排除

    由于Error 520是由于您的服务器出现问题而出现的,您可以通过查看错误日志来解决该问题。

    网站Error 520的示例

    网站Error 520的示例

    禁用Cloudflare

    在开始故障排除之前,有必要禁用Cloudflare。这有助于隔离问题,确保可以在不影响Cloudflare的情况下复制问题。

    第1步:首先登录Cloudflare。然后,在列表中找到您的站点并单击它。

    单击您列出的站点

    单击您列出的站点

    第2步:接下来,单击DNS选项卡,然后单击表中Proxy status部分下的橙色云。您会知道Cloudflare已被禁用,因为云会变成灰色。

    单击橙色云以禁用Cloudflare

    单击橙色云以禁用Cloudflare

    暂停Cloudflare

    或者,您可以选择在登录后暂停Cloudflare。

    第1步:从列表中单击您连接的站点。

    登录后从列表中单击您的站点

    登录后从列表中单击您的站点

    第2步:然后,向下滚动,直到在侧栏中看到“Advanced Actions”部分。单击在站点上Pause Cloudflare on Site链接。

    单击链接以暂停Cloudflare

    单击链接以暂停Cloudflare

    第3步:页面上将显示一个弹出窗口,要求您确认要暂停Cloudflare。继续并单击“Confirm按钮。

    单击确认以暂停Cloudflare

    单击确认以暂停Cloudflare

    进入开发模式

    如果您不想暂停或禁用Cloudflare,您可以保持运行,但将其置于开发模式,以便您仍然可以对Error 520进行故障排除。

    第1步:登录Cloudflare后,单击页面顶部的Caching选项卡。

    转到缓存选项卡 转到缓存选项卡

    第2步:接下来,向下滚动到“Development Mode部分,然后单击“Off切换按钮,切换至“On”。

    通过单击切换按钮打开开发模式

    通过单击切换按钮打开开发模式

    检查服务器的错误日志

    现在您已禁用、暂停或将Cloudflare置于开发模式,您可以通过检查服务器的错误日志来解决Error 520。

    查找错误日志的方式因主机而异,因此如果您不确定在哪里可以找到错误日志,请与您的主机联系。

    如果您的托管服务提供商使用cPanel,您可以按照以下步骤操作。

    第1步:登录cPanel并在仪表板中,转到“Metrics部分。然后,单击Errors按钮。

    单击Metrics下的Errors按钮

    单击Metrics下的Errors按钮

    第2步:错误日志页面按时间倒序显示错误以及最多300条最新消息。如果您或您的主机调整了设置,错误日志可能会显示更多消息。

    查看cPanel的错误日志以解决Error 520

    查看cPanel的错误日志以解决Error 520

    使用宝塔面板检查Error 520日志

    如果您使用宝塔面板管理WordPress网站,您可以按照以下步骤检查您的错误日志。

    第1步:登录宝塔面板并单击左侧菜单中的安全管理-Web日志管理

    宝塔日志管理

    宝塔日志管理

    第2步:下载nginx_error.log文件,使用文本编辑器打开将会会显示错误日志。如果您没有看到任何列出的内容,那是因为您的网站上没有发生错误。

    如何解释错误日志

    错误日志中的每条消息都有一个结构。如果您理解它,您就可以解释出现的错误消息。

    [Fri Oct 11 17:00:30 2019] [error] [client 123.4.56.7] error description: /path/to/file/with/error
    [Fri Oct 11 17:00:30 2019] [error] [client 123.4.56.7] error description: /path/to/file/with/error
    [Fri Oct 11 17:00:30 2019] [error] [client 123.4.56.7] error description: /path/to/file/with/error

    消息的日期和时间首先列出,然后是LogLevel指令,它告诉您消息的严重性级别。

    接下来是客户端的IP地址。这就是让这个问题出现的人。

    最后,将显示实际消息,其中可能包含受影响文件的路径。

    以下是可能在错误日志消息中列出的LogLevel严重性级别:

    • Emerg – 这让您知道问题是紧急情况并且服务器不可用。
    • Alert – 如果您看到此级别,应立即采取行动。
    • Crit – 这表示危急情况。
    • Error– 这意味着发生了错误。
    • Warn– 具有此级别的消息是关于需要您注意但不重要的问题的警告。
    • Notice– 这意味着您的服务器是正常的,但有关于您的服务器可用状况的重要详细信息。
    • Info– 此级别提供一般信息。
    • Debug– 这些消息包含启用调试时的详细信息。

    使用cURL命令对错误520进行故障排除

    您还可以使用cURL命令通过针对源服务器进行测试来解决错误520。

    curl -vso /dev/null –user-agent “Mozilla 5.0” -H “Host: your-site.com” http://123.45.6.789/wp-login.php
    curl -vso /dev/null –user-agent “Mozilla 5.0” -H “Host: your-site.com” http://123.45.6.789/wp-login.php
    curl -vso /dev/null --user-agent "Mozilla 5.0" -H "Host: your-site.com" http://123.45.6.789/wp-login.php

    请务必将“you-site.com”更改为您的实际域。您还需要使用您站点的IP地址更新“123.45.6.789”。如果您更改了登录页面,您还应该更改“wp-login.php”部分。

    成功的响应标头类似于以下示例:

    * Hostname was NOT found in DNS cache
    * Trying 123.45.6.789…
    * Connected to 123.45.6.789 (123.45.6.789) port 80 (#0)
    > GET /login HTTP/1.1
    > User-Agent: Mozilla 5.0
    > Accept: */*
    > Host: your-site.com
    >
    < HTTP/1.1 200 OK
    < Content-Type: text/html
    < Date: Day, DD, Month Year Hour:Minute:Second Timezone
    { [12345 bytes data]
    * Connection #0 to host 123.45.6.789 left intact
    * Hostname was NOT found in DNS cache
    * Trying 123.45.6.789…
    * Connected to 123.45.6.789 (123.45.6.789) port 80 (#0)
    > GET /login HTTP/1.1
    > User-Agent: Mozilla 5.0
    > Accept: */*
    > Host: your-site.com
    >
    < HTTP/1.1 200 OK
    < Content-Type: text/html
    < Date: Day, DD, Month Year Hour:Minute:Second Timezone
    { [12345 bytes data]
    * Connection #0 to host 123.45.6.789 left intact
    * Hostname was NOT found in DNS cache
    *   Trying 123.45.6.789...
    * Connected to 123.45.6.789 (123.45.6.789) port 80 (#0)
    > GET /login HTTP/1.1
    > User-Agent: Mozilla 5.0
    > Accept: */*
    > Host: your-site.com
    >
    < HTTP/1.1 200 OK
    < Content-Type: text/html
    < Date: Day, DD, Month Year Hour:Minute:Second Timezone
    { [12345 bytes data]
    * Connection #0 to host 123.45.6.789 left intact
    

    如果您看到类似的内容,则表示一切正常,并且访问该站点时没有出现错误520响应。

    另一方面,如果您看到类似于以下示例的响应标头,则表示在Cloudflare处于活动状态时发生了520错误:

    * Hostname was NOT found in DNS cache
    * Trying 123.45.6.789…
    * Connected to 123.45.6.789 (123.45.6.789) port 80 (#0)
    > GET /login HTTP/1.1
    > User-Agent: Mozilla 5.0
    > Accept: */*
    > Host: your-site.com
    >
    * Empty reply from server
    * Connection #0 to host 123.45.6.789 left intact
    * Hostname was NOT found in DNS cache
    * Trying 123.45.6.789…
    * Connected to 123.45.6.789 (123.45.6.789) port 80 (#0)
    > GET /login HTTP/1.1
    > User-Agent: Mozilla 5.0
    > Accept: */*
    > Host: your-site.com
    >
    * Empty reply from server
    * Connection #0 to host 123.45.6.789 left intact
    * Hostname was NOT found in DNS cache
    *   Trying 123.45.6.789...
    * Connected to 123.45.6.789 (123.45.6.789) port 80 (#0)
    > GET /login HTTP/1.1
    > User-Agent: Mozilla 5.0
    > Accept: */*
    > Host: your-site.com
    >
    * Empty reply from server
    * Connection #0 to host 123.45.6.789 left intact

    如何生成HAR文件

    HAR是一个HTTP存档文件。它包含发送到源服务器以及通过Cloudflare的请求的档案。

    它可以帮助您进行故障排除,因为当它用作代理时,它会比较来自源服务器和Cloudflare的响应标头。

    如果这就是错误520出现的原因,它还用于确认标题太大。

    您可以通过以下步骤使用浏览器创建HAR文件:

    Chrome

    第1步:打开浏览器并右键单击该页面。然后,选择Inspect

    在Chrome中右键单击并选择检查

    在Chrome中右键单击并选择检查

    第2步:面板打开后,单击“网络”选项卡并确保面板左侧顶部有一个红色圆圈按钮。如果它是灰色的,请单击它。

    确保“网络”选项卡上的录制按钮为红色

    确保“网络”选项卡上的录制按钮为红色

    第3步:选中记录按钮旁边的保留日志选项,然后单击清除按钮。

    选择保留日志的选项,然后单击以清除以前的消息

    选择保留日志的选项,然后单击以清除以前的消息

    第4步:加载出现错误520的页面。然后,右键单击Chrome开发人员工具的消息区域中的任意位置。

    选择Save as HAR with Content并将文件保存到您的计算机。

    将HAR文件保存到您的计算机

    将HAR文件保存到您的计算机

    火狐

    第1步:打开Firefox并右键单击页面上的任意位置。然后,选择Inspect Element

    右键单击页面后选择检查元素

    右键单击页面后选择检查元素

    第2步:转到“网络”选项卡并访问出现 520 错误的页面。右键单击面板中的消息并选择Save All as HAR选项。

    将文件保存到您的计算机。

    右键单击并选择保存HAR文件

    右键单击并选择保存HAR文件

    Edge 

    第1步:打开Edge浏览器并右键单击该页面。从列表中选择检查

    在浏览器中右键单击后选择检查

    在浏览器中右键单击后选择检查

    第2步:转到“网络”选项卡并确保圆形记录按钮为红色。如果不是,请单击它。检查保留日志选项,然后清除当前消息的图标。

    单击以保留日志并清除旧消息

    单击以保留日志并清除旧消息

    第3步:转到您遇到错误520的页面。然后,右键单击开发人员工具面板中的消息,并选择“将所有内容另存为HAR”选项。

    将文件保存到您的计算机。

    Safari

    第1步:打开Safari并右键单击Windows的页面或按键盘上的CMD并单击Mac。从列表中选择检查元素

    右键单击页面后选择检查元素选项

    右键单击页面后选择检查元素选项

    第2步:转到网络选项卡。选中“保留日志”选项,然后转到出现错误520问题的页面。

    在“网络”选项卡上选中保留日志的选项

    在“网络”选项卡上选中保留日志的选项

    第3步:单击导出按钮并将HAR文件保存到您的计算机。

    导出HAR文件

    导出HAR文件

    解决错误520的常见原因

    现在您有了错误日志,请搜索它,看看您是否注意到以下任何一个问题。然后,按照以下步骤解决问题。

    源服务器PHP应用程序崩溃

    导致错误520的一个常见问题是PHP应用程序之一在您的服务器上崩溃。重新启动PHP将修复错误。

    使用SSH,您可以为Apache服务器输入以下命令:

    apache2ctl restart
    apache2ctl restart
    apache2ctl restart

    对于Nginx服务器,您可以使用以下命令重新启动PHP:

    service nginx restart
    service nginx restart
    service nginx restart

    Cloudflare IP地址未列入白名单

    可能发生520错误的另一个原因是Cloudflare的IP地址未列入白名单。您可以将它们列入白名单,但托管服务提供商之间的步骤有所不同。

    如果您不确定如何将IP列入白名单,请联系您的主机,尤其是当您没有找到任何设置时。

    TCP空闲超时少于300秒

    传输控制协议 (TCP) 也可能是错误520的原因。

    TCP是一种标准协议,用于建立和维护网络连接。如果TCP设置在300秒内超时,可能会导致520错误弹出。

    您可以使用CLI命令更改TCP服务超时:

    set service Service-HTTP-1 -svrTimeout 500
    set service Service-HTTP-1 -svrTimeout 500
    set service Service-HTTP-1 -svrTimeout 500

    标题超过8KB

    此问题通常是由于cookie过多或cookie过大造成的。您在故障排除过程中下载的HAR文件将显示这是否是问题所在。

    Cloudflare有可用于标头8KB的限制。

    如果您编写的插件需要太多cookie或cookie中有太多数据,请尝试减少它们。或者,如果您使用了很多都需要cookie的插件,请删除其中的一些。

    来自您的服务器的空响应

    当您的站点缺少HTTP状态代码或响应正文时会出现此问题。要解决此问题,请确保为您站点的域正确设置DNS

    检查您的设置所涉及的步骤取决于您的DNS主机。如果您的托管计划捆绑了DNS,请咨询您的托管服务提供商。

    请务必注意,如果您更新了DNS设置,您的站点可能需要长达72小时才能传播。这意味着您的网站最多可能有三天不可用。

    更改DNS设置后,您需要清除站点的缓存。如果您的WordPress站点上安装了缓存插件,并且不确定如何从插件设置中清除站点缓存,则可以查看其文档。

    您还可以通过您的托管服务提供商清除您网站的缓存。如果您需要知道如何为您的网站执行此操作,请务必与他们联系。

    如果您更新了DNS设置,您的站点再次可用,您清除了站点的缓存,但仍然遇到错误520,请重新启动服务器。

    缺少响应头

    根据Mozilla的说法

    “响应标头是一个HTTP标头,可以在HTTP响应中使用,并且与消息的内容无关。响应标头,如Age,Location或Server ,用于提供更详细的响应上下文。”

    丢失响应头的原因有很多。

    解决此问题的最佳选择是使用Fiddler之类的调试工具来调试问题并准确查看问题所在,以便您可以修复它。

    服务器未返回正确的HTTP错误响应

    当您的服务器发送无效的错误响应时,它可能会导致 520 错误。这意味着该消息不符合HTTP响应代码的标准列表

    它是由您的服务器引起的,也可能是您服务器上的某些内容,例如 PHP 应用程序或 WordPress 网站上使用的插件。

    如果您找不到错误代码的来源来修复它,请尝试联系支持以获得进一步的帮助。

    再次启用Cloudflare

    检查您是否再次收到错误消息。如果这样做,请禁用Cloudflare并继续进行故障排除。

    如果520 error已解决,请再次启用Cloudflare。

    第1步:为此,请登录Cloudflare,如果您通过将帐户中的云变为灰色来禁用Cloudflare,请首先从列表中选择您的站点。

    选择要启用Cloudflare的站点

    选择要启用Cloudflare的站点

    第2步:单击DNS选项卡,然后单击灰色云以重新启用Cloudflare。

    单击灰色的云以启用Cloudflare

    单击灰色的云以启用Cloudflare

    暂停后恢复Cloudflare

    第1步:如果您之前暂停了Cloudflare,请通过登录Cloudflare 并单击仪表板中列出的站点来恢复它。

    选择您需要恢复Cloudflare 的站点

    选择您需要恢复Cloudflare的站点

    第2步:然后,转到“Overview”选项卡并向下滚动到页面底部,直到您在页面右侧的侧栏中看到“Advanced Actions”部分。

    单击Enable Cloudflare on Site链接。

    再次单击启用Cloudflare的链接

    再次单击启用Cloudflare的链接

    关闭开发模式

    第1步:如果您之前已开启Cloudflare的开发模式,您可以通过登录将其关闭。然后,单击页面上列出的您的站点。

    选择您的网站

    选择您的网站

    第2步:接下来,转到Caching选项卡。

    单击Caching选项卡

    单击Caching选项卡

    第3步:向下滚动到“Development Mode部分,然后单击当前设置为“On”的切换按钮。

    单击切换以禁用开发模式

    单击切换以禁用开发模式

    如果其他方法都失败了怎么办

    如果您仍然看到问题,请联系Cloudflare支持。

    向他们提供以下详细信息:

    • 发生错误时所请求资源的完整URL。
    • Cloudflare的Ray ID,来自您看到error 520消息的页面。
    • http://your-site.com/cdn-cgi/trace的输出,但请务必将“your-site.com”替换为您的实际域名。
    • 两个HAR文件:一个来自为您的站点启用Cloudflare时的文件,另一个来自您禁用Cloudflare时的文件。

    小结

    error 520似乎令人困惑,尤其是因为它是Cloudflare错误。但是,这与导致Cloudflare无法连接的服务器错误有关。

    上述步骤是最常见的错误520原因的解决方案。如果您在尝试后仍然遇到问题,您可能需要联系Cloudflare或您的托管支持。

    注:如果您使用了百度云加速等类似的CDN服务,同样有可能出现error 520。您可以依据上述的解决方案作为参考,进行故障排查及修复。

  • 如何修复WordPress网站500内部服务器错误

    错误类型:
    HTTP错误
    错误名称:
    500内部服务器错误
    英文名称:
    500 Internal Server Error
    错误描述:
    WordPress中的500内部服务器错误可能由多种原因引起。如果您遇到这种情况,很有可能是以下一个(或多个)因素导致了问题。

    如何修复WordPress网站500内部服务器错误

    可怕的500内部服务器错误(500 Internal Server Error)。它似乎总是在最不合时宜的时候出现,而您突然之间争先恐后地想办法让您的WordPress网站重新上线。相信我们,我们都去过那里。您可能还见过的其他行为类似的错误包括建立数据库连接错误和可怕的死亡白屏。但是从您的网站出现故障的那一刻起,您就会失去访问者和客户。更不用说它看起来对您的品牌不利。

    今天,我们将深入探讨500内部服务器错误,并引导您通过一些方法让您的网站快速恢复在线。阅读下面的更多信息,了解导致此错误的原因以及您可以采取哪些措施来防止将来出现此错误。

    500内部服务器错误(最常见的原因):

    WordPress中的500内部服务器错误可能由多种原因引起。如果您遇到这种情况,很有可能是以下一个(或多个)因素导致了问题:

    • 浏览器缓存。
    • 数据库登录凭据不正确。
    • 损坏的数据库。
    • WordPress安装中的文件损坏。
    • 您的数据库服务器的问题。
    • 损坏的WordPress核心文件。
    • 第三方插件和主题的问题。
    • 第三方插件的PHP超时或致命的PHP错误。
    • 错误的文件和文件夹权限。
    • 您的服务器上已用尽的PHP内存限制
    • 损坏的.htaccess 文件。
    • CGI和 Perl脚本错误。

    什么是500内部服务器错误?

    IETF将500内部服务器错误定义为:

    500(内部服务器错误)状态代码表示服务器遇到了阻止其完成请求的意外情况。

    当您访问网站时,您的浏览器会向托管该网站的服务器发送请求。服务器接受此请求,对其进行处理,然后将请求的资源(PHP、HTML、CSS 等)连同HTTP标头一起发回。HTTP还包括他们所谓的HTTP状态代码。状态代码是一种通知您请求状态的方式。它可能是200状态代码,表示“一切正常”或500状态代码,表示出现问题。

    有很多不同类型的500个状态错误代码(500的501502503504等),都意味着不同的东西。在这种情况下,500内部服务器错误表示服务器遇到了阻止其完成请求的意外情况 RFC7231,第 6.6.1 节)。

    WordPress网站遭遇500内部服务器错误

    WordPress网站遭遇500内部服务器错误

    500内部服务器错误变体

    由于Web服务器、操作系统和浏览器的不同,500内部服务器错误可能会以多种不同的方式出现。但他们都在传达同样的事情。以下只是您可能在网络上看到的众多不同变体中的几个:

      • “500 Internal Server Error”
      • “HTTP 500”
      • “Internal Server Error”
      • “HTTP 500 – Internal Server Error”
      • “500 Error”
      • “HTTP Error 500”
      • “500 – Internal Server Error”
      • “500 Internal Server Error. Sorry something went wrong.”
      • “500. That’s an error. There was an error. Please try again later. That’s all we know.”
      • “The website cannot display the page – HTTP 500.”
      • “Is currently unable to handle this request. HTTP ERROR 500.”

    您可能还会看到此消息随附:

    服务器遇到内部错误或配置错误,无法完成您的请求。请联系服务器管理员webmaster@domain.com并告知他们错误发生的时间,以及您可能执行的任何可能导致错误的操作。服务器错误日志中可能提供有关此错误的更多信息。

    内部服务器错误

    内部服务器错误

    其他时候,您可能只会看到一个空白的白色屏幕。在处理500内部服务器错误时,这实际上在Firefox和Safari等浏览器中很常见。

    Firefox中的500内部服务器错误

    Firefox中的500内部服务器错误

    大品牌甚至可能有自己的自定义500内部服务器错误消息,例如来自Airbnb的这条消息。

    Airbnb 500内部服务器错误

    Airbnb 500内部服务器错误

    这是来自readme的另一个创造性的500服务器错误示例。

    readme网站500内部服务器错误

    readme网站500内部服务器错误

    即使是强大的YouTube也无法避免500内部服务器错误。

    YouTube上的500内部服务器错误

    YouTube上的500内部服务器错误

    如果它是IIS 7.0 (Windows) 或更高版本的服务器,它们有额外的HTTP状态代码来更准确地指示500错误的原因:

    • 500.0 – 发生模块或ISAPI错误。
    • 500.11 – Web服务器上的应用程序正在关闭。
    • 500.12 – 应用程序正忙于在Web服务器上重新启动。
    • 500.13 – Web服务器太忙。
    • 500.15 – 不允许直接请求global.asax。
    • 500.19 – 配置数据无效。
    • 500.21 – 无法识别模块。
    • 500.22 – ASP.NET httpModules配置不适用于托管管道模式。
    • 500.23 – ASP.NET httpHandlers配置不适用于托管管道模式。
    • 500.24 – ASP.NET模拟配置不适用于托管管道模式。
    • 500.50 – 在RQ_BEGIN_REQUEST通知处理期间发生重写错误。发生配置或入站规则执行错误。
    • 500.51 – 在GL_PRE_BEGIN_REQUEST通知处理期间发生重写错误。发生全局配置或全局规则执行错误。
    • 500.52 – 在RQ_SEND_RESPONSE通知处理期间发生重写错误。发生出站规则执行。
    • 500.53 – 在RQ_RELEASE_REQUEST_STATE通知处理期间发生重写错误。发生出站规则执行错误。该规则配置为在输出用户缓存更新之前执行。500.100 – 内部ASP错误。

    500错误对SEO的影响

    503错误不同,后者用于WordPress维护模式并告诉Google稍后再检查,如果不立即修复,500错误可能会对SEO产生负面影响。如果您的网站仅关闭了10分钟,并且它一直被抓取很多次,则抓取工具只会从缓存中获取页面。或者谷歌甚至可能没有机会在它备份之前重新抓取它。在这种情况下,您完全没问题。

    但是,如果站点长时间关闭,例如6个小时以上,那么Google可能会将500错误视为需要解决的站点级别问题。这可能会影响您的排名。如果您担心重复500错误,您应该弄清楚为什么会发生这些错误。下面的一些解决方案可以提供帮助。

    如何修复500内部服务器错误

    当您在WordPress网站上看到500内部服务器错误时,您应该从哪里开始进行故障排除?有时您甚至可能不知道从哪里开始。通常500错误是在服务器本身,但根据我们的经验,这些错误源于两件事,第一是用户错误(客户端问题),第二是服务器有问题。所以我们将深入探讨两者。

    查看这些常见原因和修复500内部服务器错误的方法,并立即恢复运行。

    1. 尝试重新加载页面

    这对某些人来说似乎有点明显,但是当遇到500内部服务器错误时,您应该尝试的最简单和首要的事情之一就是等待一分钟左右,然后重新加载页面(F5或Ctrl + F5)。可能是主机或服务器过载,站点会立即恢复。在等待期间,您也可以快速尝试不同的浏览器以排除该问题。

    您可以做的另一件事是将该网站粘贴到downforeveryoneorjustme.com中。该网站会告诉您该网站是否已关闭或是否对您有问题。像这样的工具检查从服务器返回的HTTP状态代码。如果它不是200“一切正常”,那么它将返回一个向下的指示。

    downforeveryoneorjustme网站

    downforeveryoneorjustme网站

     

    我们还注意到,有时这会在您更新WordPress网站上的插件或主题后立即发生。通常这是在未正确设置的主机上。发生的事情是他们之后会遇到临时超时。但是,事情通常会在几秒钟内自行解决,因此您只需刷新即可。

    2. 清除浏览器缓存

    在深入调试站点之前,清除浏览器缓存始终是另一个很好的故障排除步骤。以下是有关如何清除各种浏览器中的缓存的说明:

    3. 检查您的服务器日志

    您还应该利用您的错误日志。如果您是宝塔面板客户,则可以在宝塔面包你仪表盘的安全管理中的Web日志管理轻松查看错误。这可以帮助您快速缩小问题的范围,特别是如果它是由您网站上的插件引起的。

    检查错误日志中的500内部服务器错误

    检查错误日志中的500内部服务器错误

    如果您的主机没有日志记录工具,您还可以通过将以下代码添加到wp-config.php文件来启用日志记录来启用WordPress调试模式

    define( ‘WP_DEBUG’, true );
    define( ‘WP_DEBUG_LOG’, true );
    define( ‘WP_DEBUG_DISPLAY’, false );
    define( ‘WP_DEBUG’, true );
    define( ‘WP_DEBUG_LOG’, true );
    define( ‘WP_DEBUG_DISPLAY’, false );
    define( 'WP_DEBUG', true );
    define( 'WP_DEBUG_LOG', true );
    define( 'WP_DEBUG_DISPLAY', false );

    日志通常位于/wp-content目录

    WordPress错误日志文件夹 (SFTP)

    WordPress错误日志文件夹 (SFTP)

    您还可以查看Apache和Nginx中的日志文件,它们通常位于此处:

    • Apache:  /var/log/apache2/error.log
    • Nginx:  /var/log/nginx/error.log

    如果由于PHP致命错误而显示500错误,您还可以尝试启用PHP错误报告。只需将以下代码添加到引发错误的文件中即可。通常,您可以在Google Chrome DevTools的控制台选项卡中缩小文件范围。

    ini_set(‘display_errors’, 1);
    ini_set(‘display_startup_errors’, 1);
    error_reporting(E_ALL);
    ini_set(‘display_errors’, 1);
    ini_set(‘display_startup_errors’, 1);
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
    ini_set('display_startup_errors', 1);
    error_reporting(E_ALL);

    您可能还需要使用以下内容修改php.ini文件:

    display_errors = on
    display_errors = on
    display_errors = on

    4. 建立数据库连接时出错

    500内部服务器错误也可能由数据库连接错误引起。根据您的浏览器,您可能会看到不同的错误。但无论在您的服务器日志中,两者都会生成500 HTTP状态代码

    以下是“建立数据库连接时出错”消息与浏览器相似的示例。整个页面是空白的,因为无法检索数据来呈现页面,因为连接工作不正常。这不仅会破坏您网站的前端,还会阻止您访问WordPress仪表盘。

    建立数据库连接错误示例

    建立数据库连接错误示例

    那么究竟为什么会发生这种情况呢?好吧,以下是一些常见的原因。

    • 最常见的问题是您的 数据库登录凭据不正确。您的 WordPress 站点使用单独的登录信息连接到其MySQL数据库
    • 您的WordPress数据库已损坏。有这么多带有主题、插件和用户不断删除和安装它们的活动部件,有时数据库会损坏。这可能是由于表丢失或个别损坏,或者某些信息可能被意外删除。
    • 您的WordPress安装中可能有损坏的文件。由于黑客,有时甚至会发生这种情况。
    • 您的数据库服务器的问题。Web主机端的许多事情可能是错误的,例如数据库因流量高峰而过载或因并发连接过多而无响应。这实际上对于共享主机很常见,因为它们为同一服务器上的许多用户使用相同的资源。

    查看我们关于如何修复WordPress网站建立数据库连接的错误的深入文章。

    5. 检查你的插件和主题

    第三方插件和主题很容易导致500内部服务器错误。很多时候,您应该在安装新内容或运行更新后立即看到错误。这就是为什么我们总是建议使用暂存环境进行更新或至少一个一个地运行更新的原因之一。否则,如果您遇到500内部服务器错误,您会突然争先恐后地找出是哪个错误造成的。

    解决此问题的几种方法是停用所有插件。请记住,如果您只是停用插件,您不会丢失任何数据。如果您仍然可以访问您的管理员,一个快速的方法是浏览到“插件”并从批量操作菜单中选择“停用”。这将禁用您的所有插件。

    停用所有插件

    停用所有插件

    如果这解决了问题,您将需要找到罪魁祸首。开始一一激活它们,每次激活后重新加载站点。当您看到500内部服务器错误返回时,您就发现了行为不端的插件。然后,您可以联系插件开发人员寻求帮助或在WordPress插件库中发布技术支持留言。

    如果您无法登录WordPress管理盘,您可以通过FTP进入您的服务器并将您的插件文件夹重命名为 plugins_old 之类的名称。然后再次检查您的网站。如果它有效,那么您将需要一个一个地测试每个插件。将您的插件文件夹重命名回“plugins”,然后将每个插件文件夹一一重命名,直到找到为止。您也可以先尝试在临时站点上复制此内容。

    重命名插件文件夹

    重命名插件文件夹

    始终确保您的插件、主题和WordPress核心是最新的。并检查以确保您运行的是受支持的PHP版本。如果结果证明与插件中的错误代码有冲突,您可能需要找技术人员协助解决问题。

    6. 重新安装WordPress核心

    有时WordPress核心文件可能会损坏,尤其是在旧站点上。在不影响插件或主题的情况下重新上传WordPress核心实际上很容易。我们有一个深入的指南,其中包含5种不同的方法来重新安装WordPress。当然,请确保在继续之前进行备份。跳到以下部分之一:

    7. 权限错误

    服务器上的文件或文件夹的权限错误也可能导致发生500内部服务器错误。以下是有关WordPress中文件和文件夹权限的一些典型权限建议:

    • 所有文件都应该是644 (-rw-r–r–) 或640。
    • 所有目录都应该是755 (drwxr-xr-x) 或750。
    • 任何目录都不应该被赋予777,即使是上传目录。
    • 强化: wp-config.php也可以设置为440或400以防止服务器上的其他用户读取它。

    有关 更深入的解释,请参阅有关更改文件权限的WordPress Codex文章 。

    您可以使用FTP客户端轻松查看您的文件权限(如下所示)。您还可以联系您的WordPress主机支持团队,并要求他们快速获取文件夹和文件的GREP文件权限,以确保它们设置正确。

    文件权限SFTP

    文件权限SFTP

    8. PHP内存限制

    耗尽服务器上的PHP内存限制也可能导致500内部服务器错误。您可以尝试增加限制。请按照以下说明更改cPanel、Apache、php.ini文件和wp-config.php文件中的此限制。

    增加cPanel中的PHP内存限制

    如果您在使用cPanel的主机上运行,​​则可以从 UI 轻松更改此设置。在“软件”下单击“选择PHP版本”。

    如何修复WordPress网站500内部服务器错误-1 选择PHP版本

    单击“切换到PHP选项”。

    文件权限SFTP

    文件权限SFTP

    然后,您可以单击该memory_limit属性并更改其值。然后点击“保存”。

    增加cPanel中的PHP内存限制

    增加cPanel中的PHP内存限制

    增加Apache中的PHP内存限制

    .htaccess文件是一个特殊的隐藏文件,其中包含可用于修改服务器行为的各种设置,一直到目录特定级别。首先通过FTP或SSH登录您的站点,查看您的根目录,看看那里是否有.htaccess文件。

    .htaccess文件

    .htaccess文件

    如果有,您可以编辑该文件以添加必要的代码以增加PHP内存限制。很可能设置在64M或以下,您可以尝试增加此值。

    php_value memory_limit 128M
    php_value memory_limit 128M
    php_value memory_limit 128M

    增加php.ini文件中的PHP内存限制

    如果上述方法对您不起作用,您可以尝试编辑您的php.ini文件。通过FTP或SSH登录到您的站点,转到站点的根目录并打开或创建一个php.ini文件。

    php.ini文件

    php.ini文件

    如果文件已经存在,请搜索三个设置并在必要时修改它们。如果您刚刚创建了文件,或者找不到设置,您可以粘贴下面的代码。您当然可以修改这些值以满足您的需要。

    memory_limit = 128M
    memory_limit = 128M
    memory_limit = 128M

    某些共享主机可能还要求您在.htaccess文件中添加 suPHP 指令以使上述php.ini文件设置生效。为此,请编辑.htaccess同样位于站点根目录下的文件,并将以下代码添加到文件顶部:

    <IfModule mod_suphp.c>
    suPHP_ConfigPath /home/yourusername/public_html
    </IfModule>
    <IfModule mod_suphp.c>
    suPHP_ConfigPath /home/yourusername/public_html
    </IfModule>
    <IfModule mod_suphp.c> 
    suPHP_ConfigPath /home/yourusername/public_html
    </IfModule>

    如果上述方法对您不起作用,则可能是您的主机锁定了全局设置,而是将其配置为使用.user.ini文件。要编辑您的.user.ini文件, 请通过FTP或SSH登录到您的站点,转到您站点的根目录并打开或创建一个.user.ini文件。然后,您可以粘贴以下代码:

    memory_limit = 128M
    memory_limit = 128M
    memory_limit = 128M

    在wp-config.php中增加PHP内存限制

    最后一个选项,如果所有其他方法都失败了,您可以试一试。首先,通过FTP或SSH登录到您的站点,然后找到您的wp-config.php文件,该文件通常位于您站点的根目录中。

    wp-config.php文件

    wp-config.php文件

    将以下代码添加到wp-config.php文件的顶部:

    define(‘WP_MEMORY_LIMIT’, ‘128M’);
    define(‘WP_MEMORY_LIMIT’, ‘128M’);
    define('WP_MEMORY_LIMIT', '128M');

    您还可以询问您的主机是否遇到内存限制问题。你也可以使用New Relic和其他故障排除方法来帮助客户缩小可能会耗尽限制的插件、查询或脚本的范围。您还可以使用您自己的自定义New Relic密钥。

    使用New Relic调试

    使用New Relic调试

    9. .htaccess文件的问题

    如果您使用的是运行Apache的WordPress主机,则很可能您的.htaccess文件有问题或已损坏。按照以下步骤从头开始重新创建一个新的。

    首先,通过FTP或SSH登录到您的站点,并将您的.htaccess文件重命名为.htaccess_old.

    重命名 .htaccess文件

    重命名 .htaccess文件

    通常要重新创建此文件,您只需在WordPress中重新保存固定链接即可。但是,如果您遇到500内部服务器错误,您很可能无法访问您的WordPress管理员,因此这不是一个选项。因此,您可以创建一个新.htaccess文件并输入以下内容。然后将其上传到您的服务器。

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    有关更多示例,请参阅WordPress Codex,例如multisite的默认.htaccess文件。

    10. CGI/Perl脚本中的编码或语法错误

    由CGI和Perl中的错误引起的500错误比以前少了很多。虽然还是值得一提的,尤其是对于那些使用cPanel的人来说,那里还有很多一键CGI脚本还在使用。正如Stack Overflow上的AEM所说

    CGI已经被各种各样的Web编程技术所取代,包括PHP、各种Apache扩展(如mod_perl)、各种风格的Java和框架(包括Java EE、Struts、Spring等),基于Python的框架(如Django、Ruby on Rails等)其他Ruby框架和各种Microsoft技术。

    以下是使用CGI脚本时的一些提示:

    • 编辑时,始终使用纯文本编辑器,例如Atom、Sublime或Notepad++。这确保它们保持ASCII格式。
    • 确保chmod 755的正确权限用于CGI脚本和目录。
    • 将ASCII模式的CGI脚本(可以在FTP编辑器中选择)上传到服务器上的cgi-bin目录中。
    • 确认您的脚本所需的Perl模块已安装并受支持。

    11. 服务器问题(请咨询您的主机)

    最后,由于PHP超时第三方插件的致命PHP错误也可能导致500内部服务器错误,因此您可以随时查看您的WordPress主机。有时,如果没有专家,这些错误可能很难解决。以下是一些常见错误示例,这些错误会在服务器上触发500 HTTP状态代码,可能会让您摸不着头脑。

    PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_error()
    PHP message: PHP Fatal error: Uncaught Error: Cannot use object of type WP_Error as array in /www/folder/web/shared/content/plugins/plugin/functions.php:525
    PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_error()…
    PHP message: PHP Fatal error: Uncaught Error: Cannot use object of type WP_Error as array in /www/folder/web/shared/content/plugins/plugin/functions.php:525
    PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_error()...
    PHP message: PHP Fatal error: Uncaught Error: Cannot use object of type WP_Error as array in /www/folder/web/shared/content/plugins/plugin/functions.php:525

    PHP超时也可能由于缺少PHP工作器而发生,尽管通常这些会导致504错误,而不是500错误。这些决定了您的站点在给定时间可以处理的并发请求数。简而言之,您网站的每个未缓存请求都由PHP Worker处理。

    当PHP工作人员已经在站点上忙碌时,他们开始建立队列。一旦达到PHP工作线程的限制,队列就会开始推出较旧的请求,这可能会导致500错误或不完整的请求。

    监控您的网站

    如果您担心将来在您的网站上发生这些类型的错误,您还可以使用updown.io之类的工具  来监控并在发生时立即通知您。它会定期向您选择的URL发送HTTP HEAD请求。您可以简单地使用您的主页。该工具允许您设置以下检查频率:

    • 15 秒
    • 30秒
    • 1分钟
    • 2分钟
    • 5分钟
    • 10分钟

    如果您的网站出现故障,它会向您发送一封电子邮件。下面是一个例子。

     

    500错误的电子邮件通知

    500错误的电子邮件通知

    如果您正在尝试调试有问题的插件或在共享主机上,这些主机往往会使服务器过度拥挤,这将特别有用。这可以让您证明您的网站实际上可能关闭的频率(即使是在半夜)。

    小结

    500内部服务器错误总是令人沮丧,但希望现在您知道了一些其他方法来解决这些错误,以快速使您的站点恢复运行。请记住,这些类型的错误通常是由第三方插件、致命的PHP错误、数据库连接问题、.htaccess文件或PHP内存限制问题以及有时PHP超时引起的。