跳转到内容
无痕工具库 无痕工具库

Hostinger 网站错误排查与修复教程

在网站开发过程中,遇到自己不了解的错误是很常见的事。因此,拥有一个能根据现有信息帮你找到解决方案的功能是非常有用的。

以下提供的解决方案不适用于使用 Hostinger AI Builder 创建的网站。如果你使用的是建站工具搭建的网站,请参阅此处:网站无法正常工作。

识别网站错误

首先,你需要开启 PHP 错误消息:

  • 要让错误直接显示在网页上,请勾选 displayErrors (display_errors) 参数。
  • 要让错误记录到特定文件中,请勾选 logErrors (log_errors):

突出显示 displayErrors 和 logErrors 复选框的 Hostinger PHP 选项

完成后,保存更改并再次访问你的网站。此时你将看到可以着手处理的具体错误消息。

一般建议

  1. 确保脚本以正确的模式上传——ASCII 或 Binary。查看脚本的 readme 文件,了解是否有特殊说明。通常应为 ASCII。
  2. 检查你的文件或目录(文件夹)的权限(chmod)值。推荐的文件权限为 644,推荐的文件夹权限为 755。
  3. 如果你曾在 .htaccess 文件中添加过额外配置,请务必仔细检查,确保其中不包含任何错误。要确认问题是否出在 .htaccess 文件上,只需暂时将其重命名即可。
  4. 直接在 PHP 脚本中添加超时规则,以防止 PHP 代码超时。
  5. 最重要的一条建议是在 Google 上搜索script name + internal server error(脚本名称 + 内部服务器错误) 或 website builder + error message(建站工具 + 错误消息)。很可能已经有人遇到过同样的问题,并在网上分享了解决方案,例如 WordPress 建立数据库连接时出错。

如何阅读 PHP 错误消息

PHP Fatal error: Uncaught Error: Call to undefined function get_header() in /home/user/public_html/index.php on line 12

  • PHP Fatal error — 错误类型。它告诉你问题的严重程度(参见下文的严重性级别)。
  • Uncaught Error: Call to undefined function get_header() — 描述问题所在的具体错误消息。
  • /home/user/public_html/index.php — 发生错误的确切文件。这是你需要首先检查的地方。
  • on line 12 — 该文件中导致问题的具体行号。

如何修复特定错误

此外,你可以仔细查看错误代码。直接修复根本原因或许就能解决问题,而无需从备份恢复:

  • Call to undefined function(调用未定义函数) 表示网站在某些文件中尝试调用一个尚未正确定义的函数。这种情况通常是由于选择了错误的 PHP 版本。请先尝试更改 PHP 版本。
  • Parse error(语法错误) 发生在你编写的代码不符合所用语言的语法或语言规则时。在这种情况下,请检查指定位置的文件,看看是否存在可以轻松修复的语法错误。通常问题很简单,比如行尾缺少 ; 符号。
  • Warning error(警告错误) 表示缺少某个文件,或代码在函数中使用了不正确的参数。如果你在“Warning”之后看到 Access denied for a user,请检查网站配置文件中的数据库凭据是否正确。
  • Fatal error(致命错误) 通常发生在代码使用 require() 函数却找不到所需文件时。请检查相关文件并上传它(或从备份中恢复)。
  • Deprecated error(弃用警告错误) 表示你的网站需要比当前设置更低的 PHP 版本。将 PHP 版本更改为较低版本即可解决问题。

注意

  • 使用你所用建站工具/插件的论坛进行搜索,在那里更容易找到解决方案。
  • Stack Overflow 是一个广受欢迎的论坛/社区网站,世界各地的开发者都会在上面分享他们的问题和解决方案。
  • 你也可以随时聘请专业开发人员来打理你的网站。