验证码的通过sessionid读取不到session

今天遇到一个奇葩问题,,,后台  登陆验证码总是他妹的不对

你知道为什么吗???我真心找资源找半天才找到!!!

尽然是因为  访问   xxx.com/admin.php此时  进入登陆界面,验证码图片读取成功,,但是你发现输入保密子,点击登陆后,,总是说验证码不正确,然后你去输出一下验证码的session,,,结果发现呵呵,,,为空

然后你去服务器下的临时文件tmp试着找一下sessionID,,,你会发现存在,,,那为什么读取不到呢??

迷惑

这是因为:  xxx.com是一级域名   你访问的验证码的sessionID放到了www.xxx.com,,,为什么放到了www.xxx.com了呢??  因为PHP配置文件中 session.cookie_domain =  默认是空的,,如果是空就,,将sessionID放到了默认的域名,默认域名即是项目绑定域名所以放到了www.xxx.com下!

sessionID  一级域名不可以读取二级域名下的sessionID,但是反之可以!!

但是以上的问题,我用IE浏览器尽然可以登陆,,IE没问题,,,这就是跟浏览器的一些内部机制有原因

时间: 2024-07-30 11:37:36

验证码的通过sessionid读取不到session的相关文章

app调用webapi时候出现读取不到session的问题

今天在测试公司的app的时候发现了这样一个问题,在app调用webapi的时候读取不到session,在网上查了一下果然有类似的问题,果断记录下来. 需求: 1.app在修改密码的时候有一个获取验证码的过程,我们将这个验证码信息记录到了session中. 2.app在获取完验证码后需要一个验证当前验证码信息及用户信息,问题就出现在验证码校验的过程,此时的session是获取不到信息的. 分析问题原因:app在请求api的时候缺少sessionid而导致session不知道从哪个session盒子

python 将验证码保存到本地 读取 写入

1 #验证码 2 #读取验证码网址.打开本地路径.写入.输入验证码 3 downpicture = urllib.request.urlopen(SecretCodeUrl).read() 4 local = open(address, 'wb') 5 local.write(downpicture) 6 local.close() 7 print(u"请从桌面寻找你的验证码") 8 print (u"请输入验证码:") 9 SecretCode = input()

解决vue+springboot前后端分离项目,前端跨域访问sessionID不一致导致的session为null问题

问题: 前端跨域访问后端接口, 在浏览器的安全策略下默认是不携带cookie的, 所以每次请求都开启了一次新的会话. 在后台打印sessionID我们会发现, 每次请求的sessionID都是不同的, 既然每次请求都是一个新的会话, 那我们去获取session的时候自然就是null了. 解决办法如下: 环境: vue 2.0 springboot 2.1.6 一.前端部分 1.  在vue引入axios的位置添加以下代码 import axios from 'axios' axios.defau

使用ashx一般处理程序,读取不到Session的问题

一般的处理程序文件里面是用不了Session的,必须得实现Session接口才可以用. 1 public class RandomCode : IHttpHandler, System.Web.SessionState.IRequiresSessionState //这里就是实现的接口 2 { 3 public void ProcessRequest(HttpContext context) 4 { 5 string checkCode = GetRandomCode(5); 6 context

从session实现机制分析模拟请求验证码的可行性(转)

悲剧了,发现写完这篇blog没有配上这个格调超高的标题. 1.0问题背景 现在要实现一个带验证码网站的的自动登陆功能.验证码识别过程不再这篇文章的讨论之中.(之后有篇文章我会详细的总结验证码的识别过程).现在问题来了,怎么拿到你本次请求登陆页面的验证码图片? 2.0方案分析 现在有几种思路: (1)请求登陆页面,截取验证码图片,类似截屏,seleinum,webbrower的DrawToBitmap()等. (2)还是webbrower,将图片复制到剪切板在从剪切板中搞出来 HTMLContro

博客园项目-登录(验证码,ajax提交数据,session和cookie)

前端页面 {% load static %} <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta http-equiv="x-ua-compatible" content="IE=edge"> <meta name="viewport" content

绕过session验证码实现批量登录注册

验证码的分类: 目前市面上验证码的主要分为两大类:session验证码.cookie验证码. 今天主要讲Session验证码.Session验证码顾名思义就是跟会话有关系,当客户端每次访问登录或者注册页面的时候,会执行一次验证码生成的操作,然后把生成的验证码保存到session的某个参数中(比如我们保存到名称为"VerificationCode"),在用户执行登录或者注册的时候,就会去session中去取VerificationCode这个参数的值,与其进行对比,如果一样,则能成功通过

Session验证码的原理

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace session验证码 { public partial class WebForm1 : System.Web.UI.Page { //我们平常在在登陆网页的时候需要输的"入验证码"的原理 p

Session的活化和钝化,表单重复提交,验证码使用流程

钝化 指将HttpSession对象序列化到硬盘中,一般钝化发生在服务器停止,服务器停止时会自动将HttpSession对象序列化到硬盘,这个事我们称为钝化. 活化 将硬盘中HttpSession对象加载进内存中,一般在服务器启动时,会自动将硬盘中HttpSession对象重新加载进内存,这一过程我们成为活化. 钝化指将内存中的对象写到硬盘中, 一个类要想可以序列化到硬盘中必须要实现java.io.Serializable接口 这个类中的所有属性也需要实现java.io.Serializable