最后更新于 6 月 13, 2024 by 热罗姆-克维尔
遇到 "500 内部服务器错误 "可能会令人沮丧,因为它实际上并没有告诉你出错的原因。
它也被称为 "http 错误 500",可能由多种因素造成,例如 WordPress 插件或主题之间的冲突、达到 PHP 内存限制、损坏的 .htaccess 文件、服务器配置错误或文件和目录权限不正确等原因。
在本文中,我将帮助您找出 WordPress 网站出现错误的确切原因,并指导您进行修复。
HTTP 500 内部服务器错误的常见原因
基本定义:
- "HTTP "是指客户端(浏览器)与网络服务器之间的通信协议。
- "500 "是状态代码,表示 内部服务器错误.
因此,"HTTP 500 内部服务器错误 "从整体上表明,在浏览器和网络服务器之间的通信过程中出现了意想不到的错误,问题来自服务器端。不过,你的服务器可能没有任何问题,所以不用担心。
至于错误的真正原因,可能是以下任何一个问题造成的:
- 编码不良的插件或 主题 可能会与其他插件和主题发生冲突,从而引发错误;
- PHP 内存限制耗尽 导致资源密集型操作提前终止;
- 已损坏 .htaccess 锉刀 由于不正确的配置或语法错误,WordPress 核心文件会破坏服务器正常处理请求的能力,导致 HTTP 500 内部服务器错误;
- 更改了文件权限 会导致服务器在访问必要的文件或目录以满足请求时遇到问题,从而引发错误;
- 在极少数情况下、 浏览器不兼容 会导致网站在一个浏览器上正常打开,而在另一个浏览器上出错。
既然我们已经了解了常见的原因,那么让我们来看看摆脱这种错误的最佳方法:
如何修复网站出现的 HTTP 500 内部服务器错误
处理您网站上的内部服务器错误肯定会带来糟糕的一天,但希望我们能一起尽快解决这个问题!
下面是 如何摆脱错误 如果您在自己的网站上遇到过这种情况 (运行 WordPress):
1.清除浏览器缓存
缓存是在用户浏览器中存储网站数据以加快访问速度的过程。通过提取最常访问的网站数据并将其放入缓存,网站的后续访问就可以绕过某些耗时的过程,如从服务器检索数据或渲染复杂的页面元素。这样,页面加载速度更快,用户体验更好。
缓存的最大弊端是,它最终可能会向访问者显示过时的内容。因此,您正在浏览的网站上显示的 HTTP 500 内部服务器错误可能是网站的缓存版本。该错误可能是一个临时故障,可能已被自动删除。
这就是为什么清除浏览器缓存是 "修复 "HTTP 500 内部服务器错误最简单、也往往是最有效的步骤。我是说 固定 这里的 "修复 "是有引号的,因为你并没有真正修复它--你只是刷新了自己的浏览器,这样你就可以在不出现错误的情况下访问网站了。
2.检查调试日志
调试日志是 WordPress 的内置工具,包含 WordPress 网站上发生的错误和警告的详细信息。
网站的调试日志应包含有关 "HTTP 500 内部服务器错误 "的详细信息,并能指出错误的根源。知道原因就等于赢了一半。
默认情况下,WordPress 调试日志是关闭的,以防止向访问者显示潜在的敏感信息。您需要先打开它。
由于网站上显示内部服务器错误,您不可能访问 WordPress 仪表板。因此,您需要进入网站后台,在 wp-config.php 文件并启用调试日志。
您可以通过 FTP 或主机账户连接到您的网站。要使用 FTP,请阅读本指南。下面,我将向您介绍如何使用主机账户上的可用工具。
登录您的主机配置文件/账户,并查找以下链接 cPanel - 这是一个主机管理面板,大多数虚拟主机都使用它。进入后,转到 文件管理器:
在文件管理器中,选择 public_html 文件夹,然后找到 wp-config .php 锉刀
右键单击文件,选择 编辑 选项。文件将在不同页面打开。
向下滚动到配置文件的末尾,然后 粘贴以下代码 就在这一行之前: /* 就这样,停止编辑!祝您写博愉快*/
:
define( 'WP_DEBUG', true);
define( 'WP_DEBUG_LOG', true);
节省 更改并退出文件。
下一步,转到 public_html → wp-content → debug.log.
右键单击并选择 开放 选择。
查找 500 内部服务器错误记录,并阅读错误详情。
如果找到了真正的原因,请跳转到下面章节中的相关解决方案。如果没有,那就开始逐一实施以下解决方案。
3.停用 插件
打开您的托管账户,然后转到 cPanel → 文件管理器 → public_html → wp-content → 插件.
右键单击 在插件文件夹中,选择 重新命名并将文件夹重命名为 "插件关闭."这将停用所有插件。
停用插件有助于检查是否是插件冲突导致了错误。如果网站上不再出现错误,则证明插件冲突理论成立。
接下来,返回 原名 的文件夹中,重新激活所有插件。这将导致错误返回。不用担心。
开放 插件文件夹,然后开始逐个停用插件 - 逐个更改每个插件文件夹的名称。每停用一个插件,检查错误是否消失。到一定时候,错误就会消除,你就会知道是刚刚停用的插件导致了错误。
右键单击插件文件夹并选择 删除 选择。
4.停用主题
要停用您当前的主题,您需要切换到另一个主题。我建议切换到 WordPress 的默认主题,您的网站上应该已经有了这个主题,它可能只是被停用了。
为此,请使用主机控制面板中的 phpMyAdmin(或主机使用的工具)连接数据库。进入后,选择 WordPress 数据库并找到 wp_options (前缀可能不同)右侧菜单中的表格。
打开表格,点击 搜索 在屏幕顶部的导航菜单中。输入"模板" 进入 价值 字段,该字段对应于 选项名称 栏,然后点击 转到.
这将从 wp_options 表。该条目告诉 WordPress 使用哪个主题;主题是 二十 在我们的例子中。
双击主题名称下的 option_value 您可以将其更改为其他主题。这必须是网站上已安装的主题,否则会出现更多错误。
对于大多数网站来说,一些安全的选择是默认主题选项,例如 二十二三 或 二十二.完成后,检查网站,看看 HTTP 500 内部服务器错误是否仍然存在。
5.重新上传核心文件
前往 wordpress.org 并在本地计算机上下载最新版本的 WordPress。下一步 解压 文件(这是 重要事项).
返回您的主机账户,再次进入 cPanel → 文件管理器 → public_html.点击 上传 上传新的 WordPress 文件夹。
您将收到即将覆盖文件的通知。没关系,这正是我们想要的。授予权限并上传新文件。
该过程需要几秒钟才能完成。检查 500 错误是否已消除。
6.再生 .htaccess 文件
使 .htaccess 文件,转到 public_html → .htaccess.右键单击文件,然后点击 下载 按钮,将现有文件下载到本地计算机作为备份。
再次右键单击并点击 删除 按钮删除文件。
点击 +文件 图标。输入 ".htaccess" 输入新文件名输入框。
点击 创建新文件.右键单击新创建的文件 编辑 它。添加以下代码
# BEGIN WordPress
重写引擎开启
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] (中文)
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !!-f
RewriteCond %{REQUEST_FILENAME} !!-d
RewriteRule ./index.php [L]
# 结束 WordPress
上面的代码来自 的正式模板 .htaccess 文件 WordPress 使用的
节省 然后再关闭窗口。
7.增加 PHP 内存限制
PHP 是一种允许 WordPress 网站运行的编程语言。在网站上显示内容的所有操作都是 PHP 操作(我稍微简化了一下)。
执行这些 PHP 操作通常需要一些时间和内存。但是,如果您的服务器没有为这些操作分配足够的资源,您可能会看到 HTTP 500 内部服务器错误。
在很多情况下,增加内存限制是修复错误的有效方法。
您可以在主机面板上进行此操作。返回 cPanel 去做该做的事。
在 cPanel 中,查找名为 PHP 版本 或 PHP 选择器.不同主机的名称可能略有不同。例如,在 Namecheap 上,您应该查找的选项称为 选择 PHP 版本.
下一步,输入 PHP 选项 或 选项.
在这里,您可以更改 内存限制.只需选择一个比当前所选值高一级的值即可。
记得点击 节省 按钮。
8.向托管服务提供商寻求帮助
没有任何效果?也许是时候联系您的托管服务提供商寻求帮助了。
告诉他们您为消除错误已经采取的所有步骤。您的托管服务提供商应该还有一些小窍门。
关于 HTTP 500 内部服务器错误的结论
这个错误是您在 WordPress 网站上遇到的最令人沮丧的错误之一。
它并没有告诉你为什么会出现这种情况,该如何处理,而且可能引发这种情况的原因有很多。
由于错误的确切原因总是稍纵即逝,因此您可以逐一尝试以下解决方案,看看哪个能消除错误:
- 清除浏览器缓存
- 检查 WordPress 调试日志
- 停用插件和主题
- 重新上传 WordPress 核心文件
- 再生 .htaccess 文件
- 增加 PHP 内存限制
如果没有任何效果,最好直接向托管服务提供商寻求帮助。
如果您对 "HTTP 500 内部服务器错误 "有任何疑问,请在下面的评论部分告诉我们。