PHP:在特定文件夹下重定向404错误

时间:2016-06-17 14:51:38

标签: php redirect http-status-code-404

我正在开发一个已经存在的内部网。我已经构建了一个应用程序,并希望处理404错误 我遇到的问题是这个错误管理应该只对我正在处理的文件夹下面的页面产生影响。

吃茶:
我的文件浏览器看起来像这样:

    • aFolder
      • anotherFolder
        • RootOfMyApplication
          • myPages

我想使用PHP将所有404错误在RootOfMyApplication 下重定向到特定页面。
例如,浏览到“.... / anotherFolder / RootOfMyApplication / notExist.php”应该将我重定向到我的自定义页面,但浏览到“.... / anotherFolder / notExist.php”不应该。

如果可能的话,我想这样做,以便目录浏览遵循相同的规则:如果网址链接到文件夹并且在RootOfMyApplication下面,我会重定向到页面。

问题来自于我不管理根目录,如果可能的话,我想对我文件夹外的导航没有影响。

修改

我想要做的是和.htaccess文件一样:当抛出错误时,我想用PHP自己处理它。我的问题是:“我可以这样做,如果是的话,我该怎么办?”我不想使用配置文件 如果有一个很好的解释,“这是不可能的”将被接受为答案。

1 个答案:

答案 0 :(得分:1)

未找到的文件的错误处理是Web服务器的作业(在您的情况下为Apache)。 PHP无法帮助您,因为您总是需要一个文件然后由PHP执行。

如果要请求不存在的文件,则无法执行该文件,Web服务器也会处理该错误。 (PHP不会启动。)

但也许有一种解决方法:

  1. 如果您在服务器/应用程序上使用URL重写,可能有办法,但我们需要更多的信息/代码。
  2. 您不能在根目录中创建.htaccess并更改文件夹的错误文档吗?
  3. 与管理员交谈并告诉他应该在httpd.conf中更改您文件夹的错误文档。
  4. (2. / 3.也许不是一个允许的解决方案,因为你不想使用配置文件。)