【发布时间】:2014-02-26 02:24:23
【问题描述】:
我的 PIP PHP 框架运行良好,然后我搞砸了:我不知道它是什么。基本上对于除了我的默认控制器之外的每个控制器,我都会收到 404 not found 错误。如果我将默认设置更改为不同的页面,新页面将正常工作,但其他页面不会。我似乎在日志中找不到任何信息。
我想知道是否有一种好方法可以跟踪 apache 用于查找新页面的路线。或者如果有任何日志我可以检查。我在框架内的本地 log.txt 什么也没显示。 Apache 日志什么也没显示。 PHP 日志什么也没显示。
我以为可能和base_url有关,但是不管怎么改,还是找不到我的控制器。
$config['base_url'] = ''; // Base URL including trailing slash (e.g. http://localhost/)
当我加载 localhost/controller 时,有什么方法可以查看 apache/ 我的浏览器尝试采用的绝对路径吗?即使页面没有加载,也会显示文件://Applications/MAMP/htdocs/path/to/controller?我可以在 config/sys 文件中的某个地方显示该信息吗?
不知道为什么降级。我以为我提供了有关该问题的所有信息,只是在寻找如何解决我的 default_controller 加载时未找到的 404 问题。
奇怪!我下载了 PIP 的新副本,将旧副本中的所有文件复制到新副本中,然后它就可以工作了。它一定是 Apache 的一些目录。
【问题讨论】:
-
我们需要查看一些代码 --- 放大您的错误报告:ini_set('display_errors',1); ini_set('display_startup_errors',1);错误报告(-1); --- 你有没有试过抛出任何 die() 语句?另外,你在用 xdebug 吗?
-
根本找不到页面。我将在哪里放入 die() 语句?如果找不到该页面,那么我假设该页面上的所有代码都不会运行。如果找到该页面,则错误报告工作正常。
-
“未找到”错误是来自 Apache 还是来自您的框架?你有一套自定义的
mod_rewrite规则来支持这个吗?如果有,请在此处添加。 -
我假设它来自框架,因为目录框架之外的页面加载并且 default_controller 页面加载。
-
我不熟悉 xdebug。我去看看。