php session.use_trans_sid,浏览器禁用cookie后php如何保持session会话-use_trans_sid机制-程序员宅基地

技术标签: php session.use_trans_sid  

原文:浏览器禁用cookie后php如何保持session会话-use_trans_sid机制

为防止浏览器禁用cookie导致服务器会话无法保持,php开发了一个机制,该机制开启后,浏览器发起请求后,服务器会创建session文件,并对返回给浏览器的页面中所有的url进行处理,若url为相对路径(不带http://ip地址)则认为此url是链接至本服务器,因此在url后补上sessionid。当用户点击带有此url的链接标签时会携带sessionid到服务器,因此实现了会话保持。

我的php版本为5.6.16,开启上述机制的参数配置条件为:

session.use_cookies = 0  //设置客户端是否使用cookie来保存session值  该参数的值不影响上述机制的进行。

但是为了验证该机制,这里把该参数设为0,排除cookie携带seesionid的可能

session.use_only_cookies = 0  //是否只使用cookie来保存session值  该参数为1时,上述机制失效。

session.use_trans_sid = 1

修改php.ini参数后需要重启php-fpm

service php-fpm stop

service php-fpm start

我用如下函数对上述机制进行了测试:

test.php

session_start();

$_SESSION[’var1’]="中华人民共和国";

echo '下一页';

?>

s2.php

session_start();

echo "传递的session变量var1的值为:".$_SESSION[’var1’];

?>

请求test.php后,传输到浏览器的代码为:

e601bbd2fb88f0bbefce379607c055cc.png

红色部分为空时也会补上sessid,跳转至当前页。若填写为http://172.16.22.28/s2.php则不会补全

d644e50d0831790102ae2a03d7c5dc22.png

去掉http://后,也会自动补全sessid,本人认为PHP该机制的处理应该是以http://为判断条件的。

因此,刷新操作也不会补上sessid参数。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39600885/article/details/116127170

智能推荐

云服务器部署的mysql数据库怎么防止被“黑”_云服务器部署数据库总是被黑怎么办-程序员宅基地

文章浏览阅读387次,点赞10次,收藏7次。​ 前些天登陆自己写的博客系统突然发现页面一片空白,当时大惊,系统这是又出什么幺蛾子了?于是赶紧看控制台,分析一波。随之发现博客前台调用后台的方法全都是一片红,再一看系统后台发现后台数据库相关操作全都报错了,赶紧打开navicat这才发现部署在云服务器的几个数据库的数据全空了!!只留下了一张warning表提示我联系某个邮箱支付比特币就给恢复数据。。。。。_云服务器部署数据库总是被黑怎么办

虚拟机配置网络、xshell连接虚拟机_xshell.exe no network with ssid 'wifi_name' found.-程序员宅基地

文章浏览阅读156次。检查是否连接1网络。进入虚拟机,打开终端,输入ping www.baidu.com ,如图下表示未连接网络:编辑虚拟机设置,将网络适配器改为NAT模式,如下图所示:打开虚拟机,点击如下图所示位置图标:我们现在看到“有线”后显示“已关闭”,点击如下图位置:点击连接:我们现在可以看到“有线”后显示“已连接”:然后我们打开终端,再次输入 ping www.baidu.com ,可以看见ping成功了,表示我们网络连接成功。_xshell.exe no network with ssid 'wifi_name' found.

Git使用流程(命令行操作与Git GUI操作)_git 使用gui如何推送-程序员宅基地

文章浏览阅读1k次。提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言(Git命令行操作和Git GUI操作)本文主要介绍Git使用流程中的具体操作一、Git使用流程简介二、使用步骤(Git命令行操作)1.Git配置2.克隆Git仓库3.跟踪文件变更、提交变更及推送变更到远程仓库三、使用步骤(Git GUI 操作)1.克隆Git仓库2.Git GUI完成文件变更、追踪变更、提交变更和推送变更到远程仓库总结前言(Git命令行操作和Git GUI操作)本文主要介绍Git使用流程中的具体操作一._git 使用gui如何推送

前端校招面试指南,校招面试题精编大全(350页)_前端校招面试题精编解析大全-程序员宅基地

文章浏览阅读1.4k次,点赞15次,收藏21次。前言本篇文章主要分享技能学习的路线图和前端校招面试题资料,希望能对想要校招和准备校招的同学有所帮助。技能学习一,HTML/CSS基础页面设计是前端的基础,也是入门的必经之路。无论是面试还是笔试,这部分都是必考的。HTML是页面中内容的载体,可以展示开发者想要用户浏览的任何文字、图片、音频信息。对于HTML的各类标签,不仅要掌握日常开发中经常碰到的,也要慢慢积累那些不常用标签,块级、行内元素的定义以及二者相互转换几乎是每场技术一面必考问题。如果将HTML标签看成一个个搭起来的盒子,那CSS则是用来_前端校招面试题精编解析大全

HTML5期末大作业:宠物网(8页)网页设计作业成品 web课程设计 计算机毕设源码-程序员宅基地

文章浏览阅读398次,点赞10次,收藏9次。好,恐吓完毕,接下来小编分类概述一下养狗须知。

C++ Primer Plus(学习笔记之——一会儿指南、一会儿指北)_c++ primer plus学习指南-程序员宅基地

文章浏览阅读153次。第10章 对象和类章节知识点大纲:过程性编程和面向对象编程类的概念如何定义和实现类公有类访问 和 私有类访问类的数据成员类方法(类的函数成员)创建和使用类方法创建和使用类对象类的构造函数和析构函数const类型的成员函数this指针创建对象数组类作用域(新的作用域类型)抽象数据类型(如:链表、队列、栈)面向对象编程(OOP,话说,你有对象吗(^∀^)?当然有啊:)是一种特殊的设计程序的概念性方法(翻译成人话就是:面向对象编程就是一门玄学,实际的说,要设计性能优越的_c++ primer plus学习指南

随便推点

android应用开发基础教程,2024年安卓社招面试题精选-程序员宅基地

文章浏览阅读341次,点赞3次,收藏8次。历时半年,我们终于整理出了这份市面上最全面的最新Android面试题解析大全!

重庆思庄Oracle技术分享---中文乱码异常处理_oracle中文乱码数据过滤-程序员宅基地

文章浏览阅读41次。中文乱码异常处理问题描述:数据库健康巡检时,执行脚本导出来的数据中文乱码处理方案:[oracle@rac1~]$ export NLS_LANG="SIMPLIFIED CHINESE"_CHINA.ZHS16GBK[oracle@rac1~]$ export LANG=zh_CN.GBK此后脚本执行出来的结果中文正常显示.注意export命令设置环境变量,只对当前bash登陆的session有效,它是存在内存里面的.可以编辑bash_profile文件进行永久设置vi.ba_oracle中文乱码数据过滤

“只有 DBA 才能导入由其他 DBA 导出的文件”各种解决办法!肯定成功!_oracle dba导入数据库-程序员宅基地

文章浏览阅读6.3k次。Oracle导入数据库提示“只有 DBA 才能导入由其他 DBA 导出的文件”各种解决办法!肯定成功!_oracle dba导入数据库

基于向量数据库的深度学习特征存储与快速检索_特征向量存到数据库-程序员宅基地

文章浏览阅读211次。1. 背景介绍1.1 大数据时代的挑战在当今大数据时代,海量的非结构化数据如图像、视频、音频等不断产生,如何高效地存储和检索这些数据成为了一个巨大的挑战。传统的关系型数据库和NoSQL数据库在处理这些非结构化数据时存在诸多限制,如查询效率低下、扩展性差等。_特征向量存到数据库

kali linux学习(永恒之蓝)_linux永恒之蓝-程序员宅基地

文章浏览阅读6.4k次,点赞15次,收藏138次。写在之前永恒之蓝是2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用Windows系统的SMB漏洞可以获取系统最高权限。5月12日,不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒,英国、俄罗斯、整个欧洲以及中国国内多个高校校内网、大型企业内网和政府机构专网中招,被勒索支付高额赎金才能解密恢复文件。准备工作pc:windows7(未安装补丁)和kali linux寻找目标靶机ifconig#查看本机_linux永恒之蓝

SCAU高级语言程序设计--实验5 循环结构(一)(1)_scau高级语言程序设计实验5-程序员宅基地

文章浏览阅读361次。SCAU高级语言程序设计--实验5 循环结构(一)(1)一、堂上限时习题1、计算阶乘题目:输入正整数n(n<12),计算n!(注n!=1*2*3*...*n)思路:循环乘而已int main(){ int m,i,sum=1; scanf("%d", &m); if (m > 0&&m < 12){ for (i = 1; i <= m; i++){ sum *= i; } printf("%d\n", sum);_scau高级语言程序设计实验5

推荐文章

热门文章

相关标签