PHP标头位置基于当前路径

时间:2016-08-07 08:44:49

标签: php header

我正在尝试为重定向创建自定义php功能。目前我有这个。 (我已经创建了带有此功能的index.php文件进行测试)

function redirect($pageName, ...$parameters)
{
    $host  = filter_input(INPUT_SERVER, 'HTTP_HOST');
    $uri   = rtrim(dirname(filter_input(INPUT_SERVER, 'PHP_SELF')), '/\\');
    foreach ($parameters as $parameter)
        $pageName .= "/".$parameter;
    header("Location: http://{$host}{$uri}/{$pageName}");
}

功能正常,但我没什么问题。

我需要在 web的 / 子文件夹 / 子域

根文件夹中动态运行此功能

Web就是指index.file现在

  • 如果我在网站的根文件夹中有网页,则功能正常运行。 (功能重定向("页面")将我重定向到例如domain.com/page
  • 如果我在网站的子文件夹中有网页,则功能再次正常(功能重定向("页面")将我重定向到例如domain.com/folder/页)
  • 如果我在子域(网站上实际上是子文件夹)中有网页,则会出现问题,例如,我在 subdomain.domain.com 上。我将在index.php重定向中使用(" page"),该函数将我重定向到subdomain.domain.com/folderwherecontentofsubdomainlocated/page。

我需要将此功能用于所有3个选项,因此如果用户将网站放在任何地方,它将正常工作而不会出现问题。

我花了几个小时寻找解决方案,但我找不到任何东西。

抱歉我的英语有点不好,希望你能理解:) 度过愉快的一天

0 个答案:

没有答案