首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >会话重定向后丢失。

会话重定向后丢失。
EN

Stack Overflow用户
提问于 2021-11-05 14:30:06
回答 1查看 239关注 0票数 0

当我使用javascript的window.location重定向到另一个PHP文件时,我想存储会话。但是不知怎么的,会话总是在服务器上丢失,而在我的本地主机上却很好。服务器仍然使用这样的IP地址:session.php。服务器正在使用CentOS。我在这里使用的根路径是/app,是造成问题的原因吗?

更新:

  • session_id()在重定向到check_session_submit.php 在此之前 > 之后之后发生了变化,甚至刷新了它不断变化的check_session.php

这是我的密码:

check_session.php

代码语言:javascript
运行
复制
<?php

session_start();
echo "Session Path: ".session_save_path()."<br>";
echo "Session ID: ".session_id()."<br>";

$_SESSION["test"] = "test";
?>

<html>
<head>
    <script>
        function delayer(){
            window.location = "check_session_submit.php";
            exit();
        }
    </script>
</head>

<?php
if(isset($_POST["field_1"])){
    $_SESSION["field_1"] = $_POST["field_1"];
    ?>
    <body onLoad="setTimeout('delayer()', 1)">
    <?php
}

?>
        <form method="POST">
            <input type="text" name="field_1">
            <input type="submit">
        </form>
    </body>
</html>

check_session_submit.php

代码语言:javascript
运行
复制
<?php

session_start();
echo "Session Path: ".session_save_path()."<br>";
echo "Session ID: ".session_id()."<br>";
echo "Session Data: ".json_encode($_SESSION);

?>

我遵循了这里给出的指示:https://stackoverflow.com/a/17242347/9858781,但仍然没有运气。尝试将会话保存到注释.../app/cgi-bin/tmp中提到的指定路径中,并使用chmod 777将权限添加到目录中,但仍然没有保存会话。我试图从/var/log/httpd/error_log中检查Apache日志,并且没有错误报告。还有什么我可以查的吗?

以下是我的服务器会话配置:

代码语言:javascript
运行
复制
session.save_path = "/tmp"
session.save_handler = files
session.use_strict_mode = 0
session.use_cookies = 1
session.use_only_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.serialize_handler = PHP
session.gc_maxlifetime = 1440
session.gc_divisor = 1000
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.sid_length = 26
session.trans_sid_tags = "a=href,area=href,frame=src,form="
session.sid_bits_per_character = 5

这些是来自服务器响应的headers:服务器响应HTTP报头

EN

回答 1

Stack Overflow用户

发布于 2021-11-11 05:39:13

这个问题解决了当我使用域与https,但如果有人可以有其他解决方案时,它仍然在服务器IP地址,请写下面的答案,谢谢!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69854845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档