处理 WordPress 网站错误可能很烦人。这些问题从来没有一站式的解决方案,而且原因多种多样,从主题和插件导致的兼容性问题,到过时的软件甚至网络托管问题。
任何 Web 开发人员都不想看到 WordPress HTTP 500 服务器错误。如果长时间无人看管,它可能会损害您网站的排名并降低用户体验。Google 对损坏的链接非常挑剔,因此将 HTTP 500 错误计算在内。
在本文中,我们将详细介绍您需要了解的有关 500 服务器错误的所有信息。我们将讨论为什么会发生这种情况,您可以采取的一般解决方案和技术解决方案来解决它,以及您将来如何避免这种错误。
让我们开始排除故障。
什么是 WordPress HTTP 500 内部服务器错误?
HTTP 500 服务器错误是指您的页面未加载或无法访问。这是一般错误响应,表示服务器无法满足您的请求。错误有多种变体。以下是一些常见示例:
- 500内部服务器错误
- 临时错误 (500)
- 网站无法显示页面 – HTTP 500
只要附加了“500”,您就可以放心地将其视为 HTTP 500 错误,下面的步骤应该可以为您解决此问题。
是什么导致 HTTP 500 内部服务器错误?
这个内部服务器错误可能是由很多事情引起的,通常是服务器和文件相关的情况。造成这种情况的示例原因是:
- 损坏或安装不当的 WordPress 主题
- 不兼容或受损的插件
- PHP 版本不兼容
- 损坏的 .htaccess 文件
- 您的主机服务器有问题
值得庆幸的是,您可以自己解决大部分问题,但从一开始就咨询您的网络托管服务商始终是个好主意,只是为了确保问题不会结束。
一般修复(首先尝试这些)
这些常规修复是您可以执行的步骤,不涉及配置您的 WordPress 网站和更改设置。下面的步骤很简单,在您开始进行下面的更多技术修复之前,可以很好地解决问题。
在不同的浏览器上打开页面或使用隐身模式
尝试在不同的浏览器或使用隐身模式打开您的页面或网站。最好在这里使用不同的浏览器。更好的是,尝试使用其他人的计算机打开您的网页。
如果您的网站或页面在您的第二个浏览器或其他地方打开,那么问题可能与您的第一个或默认浏览器的缓存或 cookie 有关。
清除浏览器缓存并删除 cookie
浏览器缓存将有用的网页数据存储在本地存储中,因此当您重新访问该站点时,您的本地缓存可以从那里加载该站点。这是特别有用的,因为大多数网站不会进行巨大的更改,而缓存会让您的速度更快。不幸的是,如果确实发生了变化,您的浏览器存储的旧信息可能会导致您这边出现错误。
注意:清除浏览器缓存和 cookie 将使您完全退出所有网站。仅当您可以在其他浏览器或其他计算机上打开您的页面时才执行此步骤。
清除浏览器缓存和 cookie 将通过从头加载网页来解决此问题。现在,清除缓存和 cookie 的过程对于所有浏览器都有些不同,因此我们将只介绍 Google Chrome 的步骤,因为它是最常用的浏览器。
- 在您的 Google Chrome 浏览器上,单击右上角带有三个点 ( ⋮ ) 的图标。
- 从那里,单击更多工具并转到清除浏览数据。
- 您可以选择一个时间范围,但通常我们会选择All time。
- 之后,选中以下复选框:
- “Cookie 和其他网站数据”
- “缓存的图像和文件”
- 单击清除数据。
完成后,现在尝试加载您的网站,看看您是否仍然收到 HTTP 500 错误。
刷新你的 DNS
域名系统或 DNS 就像互联网在您和在线服务器之间的翻译器。您的 DNS 就像缓存系统一样存储您访问过的 IP 地址。因此,当您搜索 RunCloud.io 或 Facebook.com 等网站时,您的浏览器可以直接从 DNS 获取 IP 地址,而不是通过互联网搜索该 IP。
如果 IP 地址发生变化或 DNS 遭到破坏,将导致提供的 IP 地址无法正常工作。刷新 DNS 是另一种清除 DNS 缓存的方法,因此您可以更新和解决连接问题,例如 HTTP 500 错误。
- 先关闭浏览器。
- 接下来,按Windows + R键打开“运行”对话框。
- 输入“ cmd ”并按Enter。
- 在命令提示符下,输入命令“ ipconfig /flushdns ”并按Enter键。
对于 Mac 用户,这是您的分步过程:
- 按Command + Space打开 Spotlight 。
- 输入“ Terminal ”并按Enter。
- 将以下命令复制并粘贴到终端中:sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder并按Enter。
- 系统会要求您输入 Mac 密码。这是正常的,终端只是要求验证。
当您刷新 DNS 后,终端没有成功或“操作完成”消息,所以不要等待。完成以下步骤后,重新加载浏览器并查看它是否解决了问题。如果 500 错误仍然存在,让我们从下面的更多技术修复开始。
如何修复 HTTP 500 错误 – 技术修复
联系您的房东
在我们继续之前,请先联系您的房东并向他们的支持团队寻求帮助。尽管问题很可能出在您的 WordPress 文件上,但尽早将您的支持票挂起将有助于您在修改以下修复程序时获得回复。
此外,无论如何,您的房东的支持团队很有可能会帮助您解决技术问题。
PHP 版本不兼容
您遇到此问题的另一个原因可能是因为 PHP 版本不同。某些主机会自动更新其 PHP 版本,如果您的 WordPress 主题或插件已过时,这可能会导致错误。对于这个问题,您需要先与您的房东联系并将此查询包含在您的票务请求中。
备份您的网站
首先备份您的网站。虽然以下步骤不会危及您的网站,但最好还是确保安全并进行备份。根据您的供应商,您可能已经有了每日备份,如果需要,您可以使用它。
否则,您可以使用备份插件备份您的网站。这里有一对你可以使用:
- 博客库
- 升级版
- 返回WPup
- WordPress 的数据库备份
在我们的完整指南中了解有关以正确方式执行网站备份的更多信息。
损坏的 .htaccess 文件
损坏的 .htaccess 文件是发生 HTTP 500 错误的常见原因之一。
.htaccess 文件控制您网站的许多配置,包括 URL 重定向和加载自定义错误页面。它就像您网站的目录和导航系统。损坏此文件会导致 HTTP 500 错误,以及许多其他可能的问题,如 404 消息。
注意:配置您的 .htaccess 文件对于初学者来说可能很困难,如果您弄乱了文件的设置,您可能对您的网站弊大于利。在此修复中,我们只会禁用当前的 .htaccess 文件,以便您的网站可以创建一个新文件。理想情况下没有错误。
- 将所选的 FileZilla 或 SFTP 连接到您的网站。
- 转到存储wp-admin和wp-content等文件夹的目录,然后查找.htaccess文件。
- 找到它后,右键单击该文件并将其重命名为“ .htaccess-old”。
- 刷新您的网站并检查错误消息是否消失。
如果错误已修复,那么您的旧 .htaccess 文件已损坏并产生错误。以下是创建新 .htaccess 文件的方法:
- 打开 WordPress 仪表板并转到Settings。
- 之后,寻找永久链接并打开该菜单。
- 创建一个新的 .htaccess 文件并将其配置为Plain。
- 单击保存更改。
- 将永久链接结构更改为适合您的任何内容,完成后单击“保存更改” 。
那应该为您重新创建一个新的 .htaccess 文件。重新加载您的网站,看看它是否解决了问题。
检查你的插件
您最近是否安装了新插件或更新了插件的配置设置?
插件是提升网站质量的好方法,但如果插件太多,它们可能会成为箭矢。它们可能相互冲突或因缺乏维护而过时。无论哪种方式,检查您的插件都是一个很好的开始。首先停用您安装的最新插件,然后检查您的网站是否存在错误。您可以这样做:
- 打开您的 WordPress 管理面板。该网址为 www.sample.com/wp-admin,但请将“sample”替换为您的网站名称。
- 从那里转到插件。
- 列出所有插件后,查找您安装的最新插件并将其禁用。
- 在另一个选项卡上打开您的网站,看看它是否修复了 HTTP 500 错误。
- 重复此操作,直到您完成大部分(如果不是全部)插件。
如果错误仍然存在,可以安全地假设这不是因为您的插件。您可以再次重新激活它们。
另一方面,如果问题得到解决并且通过禁用插件错误消失,请一个接一个地激活所有其他插件,直到错误重新出现。其余禁用的插件应该是罪魁祸首。要解决此问题,您可以更新插件或将其替换为替代插件。
如果更新插件不能解决您的问题,请尝试谷歌搜索您当前的案例。很可能其他 WordPress 用户也遇到了您的问题并且可能有解决方案。
重新安装或切换您的主题
您使用的是新主题还是您的主题已过时?
新主题可能会破坏站点中的页面,尤其是在未正确安装的情况下。在重新安装主题之前,请尝试切换到旧主题或使用默认的 WordPress 主题,如二十十六。HTTP 500 错误是否仍然发生?如果是,则新主题可能是问题所在。如果没有,我们建议您转向下一个解决方案。
现在,如果您没有经验,更改主题可能会有风险。主题文件不完整、安装错误版本的主题等问题可能会发生,并可能增加您的问题。我们建议仅在您已经熟悉操作 WordPress 文件或拥有可以轻松恢复的网站备份时才执行此操作。
以下是有关如何执行此操作的分步指南:
- 将 FileZilla 或您选择的 SFTP 连接到您的站点。
- 查找您的wp-content文件夹,然后转到themes。
- 找到包含您当前使用的主题的文件夹,并将主题文件夹重命名为“ themename-oldver ”。添加“ -oldver ”将帮助您从新主题中识别出旧主题。
- 现在,像往常一样安装一个新的主题副本。
或者,一些拖放构建器(如 Themify 和 Elementor)允许您轻松地从 WordPress 仪表板重新安装主题。这些步骤因构建器而异,但请尝试寻找您的主题并查看选项。重新安装按钮应该在那里。
完成后,新主题应保留您的所有设置和个性化设置。验证是否一切正常并打开出现 HTTP 500 错误的问题页面。如果问题得到解决,那么您的旧主题可能有问题。您不必删除主题的旧副本。将它放在那里以防万一,您甚至可以更改标签并为其添加日期。
检查文件权限并确保您的帐户被允许
文件权限决定谁可以读取、写入和执行您的 WordPress 站点的文件。如果您正在设置新权限或创建新类型的用户,则权限文件可能处理不当。
尽管修复权限非常简单,但这是一个重复的过程。以下是检查文件权限然后正确设置它们的方法:
- 打开 FileZilla 并将其连接到您的网站。
- 首先查找您的wp-content并右键单击该文件夹。
- 选择文件权限。
- 在新的对话窗口中,您可以为三种类型的用户设置权限:Owner、Group 和 Public。这是他们的意思:
- 所有者 – 网站所有者
- 群组 – 您设置的任何可以处理和访问 WordPress 仪表板的员工
- 公开 – 任何打开您网站的人。
- 作为一个好的经验法则,所有者应该选中所有框,并且组和公众只允许“阅读”。您需要确保出现 HTTP 500 错误的页面的权限设置正确。
对于集合,数值通常设置为“644”,对于目录和可执行文件,数值通常设置为“755”。不过,这可能与您的主机不同。因此,如果您不确定正确的值,可以等到联系房东的支持团队或通过谷歌搜索房东的数值。
重复步骤 3 到 5,但要处理出现 HTTP 500 错误的文件夹和文件。
PHP内存限制不足
对于那些在 WordPress 管理仪表板端遇到 HTTP 500 错误的人,此修复可能会有所帮助。
您网站的 PHP 内存限制通常足以应付大多数情况,但有时在您上传文件或尝试发布新帖子时会达到限制。
- 打开记事本或VS 代码。
- 输入“ memory=64MB ”并将文件保存为“ php.ini”。
- 打开 FileZilla 并将其连接到您的网站。
- 查找您的wp-admin文件夹并在那里上传 php.ini 文件。
重新加载您的 WordPress 管理仪表板并查看错误是否仍然存在。如果增加 PHP 内存限制对您有用,那么您必须联系您的主机以寻求额外帮助。
同样,由于您网站上的 PHP 内存限制通常足以满足常规 WordPress 使用,因此频繁达到限制仍然是一个问题。您可能正在运行一个编码效率低下的插件,或者有一个主题功能会减慢您整个网站的速度。要评估此问题,我们建议让您的房东亲自为您检查。他们的支持团队可能更清楚要禁用什么以及使用什么替代方案。
幸运的是,如果您使用的是 RunCloud – 这再简单不过了。
对于连接到 RunCloud 的服务器上的任何 Web 应用程序,您可以直接从 RunCloud 仪表板增加 PHP 内存限制。
只需导航到您的 Web 应用程序的设置,然后增加那里的memory_limit的值。确保您点击更新 PHP 设置,以便应用您的更改。就是这样!
这应该可以解决 RunCloud 用户的问题。
使用备份恢复您的站点
尽管其他来源经常引用此步骤,但我们不建议您通过备份恢复或重新安装整个网站。您的个人 WordPress 文件导致 HTTP 500 错误的可能性很低,而作为没有经验的 WordPress 用户使用备份恢复站点的风险更高。
一些主机为您备份您的 WordPress 网站作为他们付款计划的一部分,所以只需联系他们的客户支持团队。他们可能会先解决您的问题,然后再将您的网站恢复到以前的备份。
重新安装核心 WordPress 文件
然而,核心 WordPress 文件是另一回事。这些 WordPress 文件是您网站的骨架系统,这些文件的任何问题肯定会对您的网站产生重大影响。值得庆幸的是,重新安装 WordPress 并不复杂。这是最简单的方法:
- 打开您的 WordPress 管理仪表板。
- 导航到更新。您会在屏幕左侧的“主页”选项卡下方找到它。
- 在 WordPress 更新页面上,查找并单击立即重新安装。
WordPress 将自动开始在您的设备上下载,并将最新版本重新安装到您的站点。这不会花太长时间,因为 WordPress 文件本身很小。
如果您无法访问 WordPress 管理面板,您可以尝试使用 SFTP 重新安装 WordPress。您需要某种文件归档工具来解压缩文件。如果没有,可以使用WinRAR。
在您继续执行以下步骤之前,我们建议您备份您的网站以确保安全。虽然您只会用新文件覆盖旧的 WordPress 文件,但备份您的网站只是一种很好的做法。
- 打开WordPress.org并下载最新的 WordPress 版本。该按钮将位于屏幕的右上角。
- 下载完成后,右键单击 WordPress zip 并查找Extract Files…。单击该选项。
- 屏幕上会出现一个提示,要求确认,您可以对所有这些都说“是” ,这样您就可以开始提取文件了。
- 文件解压完成后,您会发现一个“wordpress-versionxxx ”文件夹。打开它并删除wp-content。
- 之后,打开 FileZilla 或任何 SFTP 并将其连接到您的网站。
- 将“ wordpress-versionxxx ”文件夹中的所有文件复制并粘贴到您的根文件夹。这通常命名为public或public_html。
- FileZilla 或您正在使用的 SFTP 将打开提示“目标文件已存在”。单击Overwrite选项并选择Ok。
您的计算机应该开始用刚刚下载的新文件覆盖旧的 WordPress 文件。这将覆盖所有核心 WordPress 文件,而不会触及或删除您的任何主题、插件和整体内容。
这应该是您需要一劳永逸地修复 HTTP 500 错误的最后一个修复。如果您仍然收到 HTTP 500 错误,请确保您已联系主机的客户支持团队。
如何防止 HTTP 500 错误发生?
预防胜于治疗,网站错误尤其如此。HTTP 500 错误会对您网站的搜索引擎优化产生负面影响,您可能需要数周甚至数月的时间才能自己发现这些错误。以下是您可以用来防止错误再次发生的一些常规提示。
更新您的插件
确保所有插件都已更新。您的 PHP 版本不再支持的过时插件可能会导致这些错误,如果该插件负责您网站的大部分内容,则更是如此。
保持文件权限为最新
每当您创建新用户或尝试重新配置您的权限时,请确保在关闭 SFTP 之前一切正常。不正确的权限,尤其是在为您的员工创建新角色时,可能会导致这些 HTTP 500 错误。
使用 WordPress 调试
仍然收到错误?希望您的房东现在已经回复了。此步骤完全是可选的,但它可以加快寻找其他解决方案或为您的主机提供更多信息的过程。
调试功能会具体显示错误的来源。这对您的房东来说是很有价值的信息,同时也为您提供了错误消息,您可以在 Google 中复制粘贴,希望能找到与您有相同特定错误的人。
请记住,如果您是服务器管理新手,调试日志可能会让您望而却步。如果您不理解调试产生的日志,至少您可以将它们呈现给您的主机或支持团队,以帮助他们解决您的问题。
以下是打开调试的方法。
- 打开您的安全文件传输协议 (SFTP) 应用程序。如果您没有,行业标准是FileZilla。从提供的链接下载并安装客户端。
- 要将 FileZilla 连接到您的站点,请打开FileZilla。
- 单击文件并转到站点管理器。
- 在主机框中输入您网站的ftp 地址。看起来是这样的:ftp 地址不是http://www.sample.com而是ftp://ftp.sample.com或ftp://sample.com。
- 之后,只需将端口框留空即可。那里的默认值应该是 21,除非另有说明,否则您不需要更改它。
- 从“登录类型”框中,选择“正常”。
- 接下来,在用户框中输入您的完整用户名。这可以是正确的用户名或电子邮件地址,这取决于您网站的设置方式。
- 最后,输入密码。
完成这些步骤后,FileZilla 现在应该连接到您的网站。
- 从那里,查找并打开wp-config.php文件。此步骤不需要代码编辑器,但如果您更喜欢更简洁的界面而不仅仅是默认的记事本,则可以下载 VS Code 。
- 打开 wp-config.php 文件,添加以下代码:
定义('WP_DEBUG_LOG',真);
- 保存 .php 文件并重新加载您的网站。
您站点出现的任何错误现在都应记录到您的 debug.log 文件中。您可以在 FileZilla 的 /wp-content/ 目录下找到它。完成调试后, 不要忘记将值从true更改为false 。
现在,只需将 debug.log 文件发送给您的主机,以便他们解决您的问题。
行动后报告——修复 WordPress HTTP 500 错误
WordPress HTTP 500 错误是一个很难解决的问题。它含糊不清,这使得故障排除变得很困难。我们已按重要性排列了上述步骤,希望您能够解决此问题,而不必追根究底。 哪种修复对您有用?如果他们都没有,您是如何设法解决这个问题的?在下面的评论中让我们知道!