如何在PHP中使用标头中的自定义路径重定向?

如何在PHP中使用标头中的自定义路径重定向?,php,redirect,path,header,Php,Redirect,Path,Header,我正在尝试使用PHP中的Header函数将用户重定向到不同的页面,就像这样,但它不起作用: Header("Location: " . VIEW_PATH. "/somePage.html"); 视图路径在my config.php中定义如下: 定义'VIEW_PATH',DIR.\VIEW Header函数当前位于控制器文件夹中的my Auth类中,我正在尝试将用户重定向到视图文件夹中的页面 这是可行的,但我想利用视图路径: 标题位置:../View/somePage.html 如我所见,您

我正在尝试使用PHP中的Header函数将用户重定向到不同的页面,就像这样,但它不起作用:

Header("Location: " . VIEW_PATH. "/somePage.html");
视图路径在my config.php中定义如下: 定义'VIEW_PATH',DIR.\VIEW

Header函数当前位于控制器文件夹中的my Auth类中,我正在尝试将用户重定向到视图文件夹中的页面

这是可行的,但我想利用视图路径:
标题位置:../View/somePage.html

如我所见,您的VIEW\u PATH常量包含服务器上的物理路径。但您应该在头调用中使用文件的url路径

看看这个例子

define('VIEW_PATH', 'C:\xampp\htdocs\Store\View');
define('VIEW_URL',  'http://www.example.com/Store/View');
// or define('VIEW_URL', '/Store/View');
附言。
你也应该在你的url中使用/而不是\

不确定你的意思。您不是已经在使用视图路径了吗?输出视图路径时它包含什么?回波视图路径;C:\xampp\htdocs\Store\View\u路径工作。。。我已经将其添加到include中,效果很好:include\u onceVIEW\u路径/registration.html;如果你真的在那里使用反斜杠\View,那么它就不起作用了。对所有路径使用前斜杠。它们也适用于Windows。它适用于include,但不适用于Header…谢谢,我该如何定义相对URL路径或某种类型?我想我必须用$\u SERVER['DOCUMENT\u root']找到根目录,但我已经读到最好不要使用它,因为结果因平台而异。那么我应该用什么来代替$\u SERVER['DOCUMENT\u ROOT']?我认为最好在配置文件中定义VIEW\u URL常量,并使用这个常量。您必须知道文档根目录在哪里,在更改web服务器配置之前,其值不会更改。在大多数情况下,document_root调用“public_html”或“httpdocs”。如果您需要动态定义常量,您可以尝试此技巧,但reccomend只需定义常量:1将文件放入根目录,确定其目录名:$dir=dirname\uuu\file\uu;2执行此操作$view\u url=str\u替换$dir,查看路径;3替换为/:$view\u url=str\u替换“\\”、“/”、$view\u url