【问题标题】:php header() above document root文档根目录上方的 php header()
【发布时间】:2009-08-18 13:42:19
【问题描述】:
我正在尝试使用 header() 指向文档根目录上方的页面。我正在运行 XAMPP,所以我试图在 htdocs 之上调用一个脚本。
我的问题是它给了我 404 错误并且找不到文档。
我的问题:您可以使用 header() 来调用文档根目录上方的脚本,还是使用 include() 来完成此操作更好?
我试图成为一名优秀的 php 程序员,并将所有带有密码和数据库访问权限的脚本保存在 htdocs 文件夹上方。
提前致谢。
【问题讨论】:
标签:
php
header
document
root
【解决方案1】:
不,你不能。文档根目录之上的任何内容都没有 URL,因此不可能。您想在根目录下的文件中使用包含。
您将所有密码文件放在根目录上方的原因是用户无法使用 URL 访问它们。这也意味着您不能使用 URL 将它们重定向到那里。
【解决方案2】:
您不能使用标头重定向到文档根目录之上的任何内容。标头重定向告诉浏览器请求此文件而不是当前文件,并且浏览器只能访问服务器提供的 URL - 这意味着该文件位于文档根目录下。
您可能需要查看重写规则(在 apache 上,其他服务器提供类似的规则)以将公共 url 重写(或“映射”)到文档根目录上方的脚本。
【解决方案3】:
您必须使用包含;您不能将用户重定向到不在文档根目录中的任何内容。
【解决方案4】:
您不能使用标题来完成此操作。
标头用于将浏览器发送到特定的 URL - 当 URL 不在服务器的可服务目录中时,您不能这样做。