You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

主机托管站点根目录登录文件移至auth子目录后访问报500错误咨询

问题原因
  • 你的登录相关文件移动到auth子目录后,原代码中的相对路径_inc/xxx.php是相对于当前执行文件的所在目录计算的,程序会尝试从www_root/auth/_inc/路径下加载文件,但你的_inc目录实际存放在站点根目录www_root/下,路径不匹配导致文件加载失败,触发PHP致命错误抛出500状态码。
修复方案

方案1:直接修改相对路径(快速适配)

将login.php中原有的引用代码全部修改为向上回溯一级目录的相对路径即可:

require_once "../_inc/DBController.php";
require_once "../_inc/Auth.php";
require_once "../_inc/Util.php";

$auth = new Auth();
$db_handle = new DBController();
$util = new Util();

// if form was not sent then check if user is logged in
require_once "../_inc/ValidateCookiesSessionLogin.php";

方案2:使用绝对路径(避免后续移动文件再次出错)

优先推荐这种方案,你可以在站点公共配置中先定义根目录常量,后续所有文件引用都基于该常量写绝对路径:

  1. 先在www_root/_inc/config_files.php中添加根目录定义:
// 定义站点根目录绝对路径
define('SITE_ROOT', dirname(__DIR__) . '/');
  1. 之后所有文件的引用都修改为如下格式,不受文件所在目录层级影响:
require_once SITE_ROOT . "_inc/DBController.php";
require_once SITE_ROOT . "_inc/Auth.php";
// 其余引用同理修改即可

内容的提问来源于stack exchange,提问作者Dump

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 03:54:05