排查500内部服务器错误
500 内部服务器错误是一种通用服务器响应,不指明具体原因。在 WordPress 中,通常由 PHP 致命错误、插件或主题不兼容的更改、服务器资源耗尽、无效的服务器规则或文件权限不正确触发。错误日志是查找原因最可靠的地方。
在更改插件、主题、服务器文件或权限之前,请创建完整备份或在临时网站上重现该问题。
首先查找错误详情
1. 记录错误发生的 URL、操作和大致时间。注意错误是影响整个网站、仅影响 WordPress 仪表盘,还是影响某个特定操作(如保存设置或导入内容)。
2. 检查网站管理员的电子邮件,查找 WordPress 技术问题消息。如果 WordPress 检测到插件或主题致命错误,该消息可能会指明受影响的组件并提供恢复模式链接。
3. 在主机控制面板中打开 PHP 或服务器错误日志。如果不可用,请向主机提供商索取错误发生时的日志条目。
4. 如果日志信息不足,请通过在 wp-config.php 文件中 /* 就这样,停止编辑!祝发布愉快。 */ 行之前添加以下常量,临时启用 WordPress 调试日志:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
重现错误,然后检查 wp-content/debug.log 文件。收集相关条目后禁用调试模式,并且不要公开分享日志,因为它们可能包含敏感的服务器信息。详情请参阅官方 WordPress 调试指南。
撤销最近的更改
如果错误是最近出现的,请检查错误出现前立即进行的更改:
- WordPress、WooCommerce、WoodMart、WoodMart Core 或其他插件的更新。
- PHP 版本或主机配置更改。
- 新插件、自定义代码、子主题修改或服务器规则。
- 文件上传不完整或更新中断。
尽可能恢复最后一个已知的正常备份,或在临时网站上还原特定更改。在收集错误详情之前,不要重新安装 WordPress 或 WoodMart。
检查插件或主题冲突
如果错误日志指向某个插件,请停用该插件并再次测试相同的操作。如果原因不明且 WordPress 仪表盘可访问,请临时停用非必要插件,然后一次重新激活一个,直到错误再次出现。
如果仪表盘无法访问,请使用主机文件管理器或 SFTP 重命名可疑的插件目录。要一次测试所有常规插件,请临时将 wp-content/plugins 重命名为 plugins-disabled。测试后立即恢复原始目录名称,然后从仪表盘重新激活所需插件。
如果错误是在主题或子主题更改后出现的,请在临时网站上临时切换到默认的 WordPress 主题。如果错误消失,请恢复 WoodMart 并使用致命错误条目来确定问题来自 WoodMart、子主题还是自定义代码。
检查 PHP 和服务器限制
导航至 仪表盘 -> WoodMart -> 状态 并查看服务器值。WoodMart 推荐使用 PHP 8.3 或更高版本以及以下 PHP 配置:
memory_limit:256Mmax_execution_time:180max_input_vars:10000post_max_size:64Mupload_max_filesize:64M
诸如 允许的内存大小已耗尽 或 超过最大执行时间 之类的错误会指明相关限制。请向主机提供商请求更改服务器控制的值。完整的运行环境要求请参阅 要求与 WordPress 设置。
在 Apache 或 LiteSpeed 上检查 .htaccess 文件
损坏或不兼容的 .htaccess 规则可能在 Apache 或 LiteSpeed 服务器上导致 500 错误。Nginx 不使用 .htaccess,IIS 通常使用 web.config;在这些服务器上更改规则前请联系主机提供商。
1. 通过主机文件管理器或 SFTP 打开 WordPress 安装目录,并下载 .htaccess 的备份。
2. 将服务器上的副本重命名为 .htaccess-backup。不要删除它。
3. 测试网站。如果网站开始正常工作,请登录并导航至 仪表盘 -> 设置 -> 固定链接,然后点击保存更改以生成标准的 WordPress 规则。
4. 从备份中仔细恢复任何必需的自定义重定向、安全指令或插件规则。如果错误再次出现,请让主机提供商或这些规则的作者进行审查。
如需手动重建文件,请参阅官方 WordPress .htaccess 文档。
检查文件权限
典型的 WordPress 权限是目录为 755,文件为 644,但正确的值取决于主机环境和文件所有权。除非主机提供商确认了所需配置,否则不要应用 777 权限或执行递归权限更改。请参阅官方 WordPress 安全加固指南。
联系主机或 WoodMart 支持
当日志指向 PHP-FPM、Web 服务器、防火墙、文件所有权、数据库连接或资源限制时,请联系主机提供商。当致命错误指向 WoodMart 或 WoodMart Core 并且仅使用必需插件即可重现时,请联系 WoodMart 支持。
请提供受影响的 URL 和操作、相关的错误日志条目、错误发生时间、最近的更改以及 WoodMart -> 状态 中的信息。在分享日志之前,请移除密码、API 密钥、访问令牌和不相关的个人数据。