所以,两个问题!
使用标题时('位置:newHome.php')该文件是否需要位于同一目录中?
我打算在主目录中使用signOut.php,并且可以从任何页面退出网站.. example.com/example/example.example.html
我的代码只返回example.com/signOut.php上的错误页面signOut.php与我测试它的目录位于同一目录中。
example.com/example.php
<li><a href="signOut.php"><strong>Sign Out</strong>
example.com/signOut.php
<?php
session_start();
$_SESSION = array();
session_destroy();
header('Location: http://www.example.com/newHome.html');
?>
答案 0 :(得分:0)
或者,在同一个文件夹中
header('location: newHome.php');
或者,不在同一个文件夹中
header('location: path/to/newHome.php');
或完整网址
header('Location: http://www.example.com/newHome.html');
答案 1 :(得分:0)
1)回答第一个问题(使用标题时('location:newHome.php')该文件是否需要在同一目录中?)
如果您不提供任何路径,那么是它必须位于同一目录中。
但是,您需要为您的网站网址定义常量,如下所示:
define(SITE_URL,"http://www.example.com/");
然后在您网站的任何地方使用它,如下所示:
<li><a href="<?php echo SITE_URL; ?>signOut.php"><strong>Sign Out</strong>
按照以下链接了解有关常数的更多信息:
http://php.net/manual/en/function.constant.php
2)回答第二个问题(我的代码只返回example.com/signOut.php上的错误页面)
这种情况正在发生,因为您的路径不正确。手动更正路径或按照我的第一个答案定义常量以更正它。
我认为Headers没有任何问题,因为您说404找不到错误。
答案 2 :(得分:-1)
ob_start();
header('Location: http://www.example.com/newHome.html');
只需在标题前使用 ob_start(); 即可