会话:让 Page2.php 在刷新时显示 404 错误

Sessions: Getting Page2.php to display 404 Error on Refresh

我正在尝试使用 Page1.php 设置会话,重定向到 Page2.php,然后如果 Page2.php 被刷新、关闭、重新访问,我希望它显示 404 错误.这是我的:

page1.php:

session_start();
$_SESSION['time'] = 'time';
header('location: page2.php');
exit;

page2.php:

session_start();

if( !isset( $_SESSION['time'] ) ) {
    header("Location:http://google.com");
} else {
    echo ( "this session is ". $_SESSION['time'] );
}

如何添加函数以便 page2.php 刷​​新后过期?我只希望 page2.php url 在浏览器会话结束后为用户过期

如果您想使会话过期,请使用 session_destroy()

最后调用

header("HTTP/1.0 404 Not Found");

简而言之,一旦您使用 session_start(); 开始会话;您将能够访问存储在 $_SESSION 中的会话变量。

完成会话后,调用 session_destroy() 清理并终止会话。

例如:

if($action =='logout') {
    session_destroy();
}

PS:如果您在 php.ini 配置中设置了 session.auto_start,则不必在页面顶部调用 session_start()。

有关 session_destroy 的更多信息,请遵循此 link:http://php.net/manual/en/function.session-destroy.php

有关会话的完整详细信息: http://php.net/manual/en/ref.session.php

添加

$_SESSION['time'] = '';

在 else 的末尾