如何将PHP重定向到根index.php

时间:2016-05-31 04:39:05

标签: php .htaccess header

所以我有这三个子文件夹。那个文件夹代表三个用户。我有session.php这将检查用户的ID是否可用,它将继续登录,但如果现在它会将您重定向到index.php

以下是session.php

的代码
<?php
//Start session
session_start();
//Check whether the session variable SESS_MEMBER_ID is present or not
if (!isset($_SESSION['username']) || (trim($_SESSION['username']) == '')) {
    header("Location: index.php");
    exit();
}
$session_id=$_SESSION['username'];
?>

我知道代码是正确的,我唯一的问题是header(); 例如,当我键入location / rootFolder / SubFolder / file.php

它会给我PHP错误找不到对象或文件不存在

5 个答案:

答案 0 :(得分:0)

假设您要从内部文件夹移动到外部文件夹索引页面,那么在这种情况下您可以使用:

header("location:../index.php");

答案 1 :(得分:0)

您应该只需要为/添加相对URI的前缀,如下所示: header('Location: /index.php');

<强>更新

重定向到的URL与脚本无关,它与当前用户的URL相关。 如果session.php位于/system/functions/session.php

,当前网址为http:://example.com/user/subfolder/file.php

  • header('Location: index.php');将重定向到http:://example.com/user/subfolder/index.php

  • header('Location: ../index.php');将重定向到http:://example.com/user/index.php

  • header('Location: ../../index.php');将重定向到http:://example.com/index.php

  • header('Location: /index.php');将重定向到http:://example.com/index.php

  • header('Location: /');将重定向到http:://example.com/

因此,如果可以在location/rootFolder/SubFolder/file.php

找到http://example.com/SubFolder/file.php,则可以到达header('Location: /SubFolder/file.php');

您可以使用rootFolder

假设DOCUMENT_ROOT是您的网络服务器$_SERVER['DOCUMENT_ROOT'];,可以在(defn my-map [f coll] (lazy-seq (reduce #(conj %1 (f %2)) [] (seq coll)))) 中查看

答案 2 :(得分:0)

由于您的索引位于父目录中,请使用:header("Location: ../index.php");

如果您的index.php位于根目录中:header("Location: /index.php");

使用/可能会更好地抛出错误:header("Location: http://{$_SERVER['HTTP_HOST']}/index.php");

答案 3 :(得分:0)

如果当前页面和下一页存在于同一目录中,则表示不需要任何/斜杠,否则您可以通过../file.php返回单个目录,或者通过../../file.php返回两个目录,如下所示

答案 4 :(得分:0)

使用以下:

header("location: /");