Tag: 会话

IIS会话超时与ASP.NET会话超时

在IIS 6(和其他版本太afaik),在属性 – >主目录选项卡 – >configurationbutton – >选项选项卡中有会话超时设置。 看起来像这样: 在ASP.NET web.config中有一个SessionState设置,如下所示: <system.web> <sessionState timeout="120" /> <!– etc .. –> </system.web> 他们有什么关系吗? 他们设置相同的东西,还是不同的东西?

如何检查一个PHP会话是否为空?

这是不好的做法? if ($_SESSION['something'] == '') { echo 'the session is empty'; } 有没有办法检查它是否空或它没有设置? 我真的这样做: if (($_SESSION['something'] == '') || (!isset($_SESSION['something'])) { echo 'the session is either empty or doesn\'t exist'; } is !isset只是检查$_SESSION['']存在,并不检查数组中是否有值

PHP的垃圾收集澄清

从PHP手册中,session.gc_probability和session.gc_divisor声明gc将基于这个概率发生。 我明白了。 我不清楚的是,这个概率是按照会话还是总体来说的。 所以如果我的概率是GC的1%(1/100),那么这是否意味着如果一个会话不断扩展,每次有1%的改变,特定的会话将被清除? 或者这是否意味着所有现有会议(以及新会议)的1%将触发所有其他会议的GC? 我很确定这是后者,我只是想确定一下。 这个问题的目的是在我们的网站上,我希望用户有长期的会议(6个月)。 如果所有会话中有1%触发了GC,那么这将有效地消除长期会话的目的,因为GC最终会每隔一两个小时发生一次。

Scrapy – 如何pipe理Cookie /会话

对于Scrapy如何使用Cookie以及如何pipe理这些Cookie,我有点困惑。 这基本上是我想要做的简化版本: 网站的工作方式: 当你访问网站时,你会得到一个会话cookie。 当你进行search时,网站会记住你search的内容,所以当你进入下一页的search结果时,它会知道search结果。 我的脚本: 我的蜘蛛有一个searchpage_url的开始url search页面被parse()请求,search表单响应被传递给search_generator() search_generator()然后使用FormRequest和search表单响应yield大量的search请求。 每个FormRequests和后续的子请求都需要拥有它自己的会话,所以需要拥有它自己的cookiejar和它自己的会话cookie。 我已经看到文档的部分,谈论一个元选项,停止被合并的Cookie。 这实际上是什么意思? 这是否意味着使请求的蜘蛛在其余生命中将拥有自己的cookiejar? 如果每个蜘蛛级别的cookie都是这样的,那么当多个蜘蛛产生时它是如何工作的? 是否有可能只让第一个请求生成器产生新的蜘蛛,并确保从那时起只有蜘蛛处理未来的请求? 我假设我必须禁用多个并发请求。否则,一个蜘蛛会在相同的会话cookie下进行多次search,而将来的请求只会涉及到最近的search? 我很困惑,任何澄清将大受欢迎! 编辑: 我刚刚想到的另一个选项是完全手动pipe理会话cookie,并将其从一个请求传递给另一个。 我想这将意味着禁用cookies ..然后从search响应抓取会话cookie,并将其传递给每个后续请求。 这是你在这种情况下应该做的吗?

在Express.js中使用会话

我需要帮助理解Web应用程序的会话的概念。 我使用Express 3.0运行Node.js服务器。 我的目标是: 为每个login的用户创build一个会话 存储此会话并用它来validation用户是否已经login(防止两个设备同时使用同一用户),并限制对某些页面的访问(通过将会话ID与其他一些数据进行匹配) 我将使用MemoryStore保存会话(似乎最简单)。 如果上述目标有意义,您可以提供一个彻底的解释如何实现它们?

什么是PHP会话IDstring的长度?

我正在MySQL数据库中创build一个表来保存一些会话数据,包括session_id 。 什么应该是存储session_idstring的VARCHAR的长度?

在PHP中pipe理会话的正确方法?

我目前正在build立一个authentication系统。 我目前的布局是从$_POST ,他的密码MD5他的电子邮件,并检查数据库对他的电子邮件和他的密码。 如果匹配,我使用session_start ,并开始将数据存储在$_SESSIONvariables中,如下所示: $_SESSION['uid'] = $uid; $_SESSION['first_name'] = $first_name; 并在网站的每一页上,我会做一个简单的检查 isset($_SESSION['uid']); 如果没有,则redirect到索引页面,如果是,则加载页面。 我正确地做这个? 这安全吗? 有人伪造这些数据有多容易? 有人告诉我,我应该创build一个表,用户的电子邮件,他的会话ID,并用它来pipe理的事情…我变得相当困惑 – 这将如何帮助? 有人能澄清这一点吗? 用PHP会话pipe理身份validation的正确方法是什么? 谢谢。

秘密密钥没有在烧瓶会议中设置

我有一个运气在Flask(一个Python模块)中运行的运气。 现在我正在使用烧瓶第三方库Flask-Session 当我连接到我的网站时,出现以下错误: RuntimeError:会话不可用,因为没有设置密钥。 将应用程序上的secret_key设置为独特和秘密的内容。 以下是我的服务器代码。 from flask import Flask, session from flask.ext.session import Session SESSION_TYPE = 'memcache' app = Flask(__name__) sess = Session() nextId = 0 def verifySessionId(): global nextId if not 'userId' in session: session['userId'] = nextId nextId += 1 sessionId = session['userId'] print ("set userid[" + str(session['userId']) + "]") else: print ("using […]

可怕的“保持login”和会话检查

所以,我知道这已经被处死了,但是我所遇到的所有答案都是相互混淆/相互矛盾的,或者他们的解释是不完整的,我试图用自己的所有资源可用,但我想我已经迷路了。 我想一劳永逸地澄清这一点。 感谢您的耐心提前,因为这可能会有一点点啰嗦。 我的页面顶部有一个小的login框,如果用户没有login,它将保持不变。如果他们已经login,而不是login框,他们会看到一个问候与他们的名字。 会话检查 所以首先,这里是一个(到目前为止我的理解)如何检查用户可以访问“仅限会员”内容的图表。 (这段代码放在页面的顶部来检查和设置variables,如$loggedin = true; ) 现在,我的$_SESSION['loggedin']就是用户名。 据我的理解,会话可能是伪造或劫持在同一个域中,所以我知道这是非常不安全的(例如,攻击者可以以某种方式使会话包含不同的用户名,并且可以即时访问该用户的东西)不知道我应该如何检查会议。 我可以想象做到这一点的唯一方法是连接到数据库每次加载页面,并检查MD5哈希或从数据库中的东西(并更新它),但我想这会产生大量的不必要的服务器stream量,我几乎肯定有一个更好的方法来做到这一点。 在login 以下是用户login时发生的情况(以及是否显示问候语或login框)。 大多数情况下,我在这部分(我希望)是相当稳固的,但我不知道我的MD5哈希应该包含为了能够以后重新检查与数据库中的散列cookie和新生成的散列,以确保cookie没有被攻击者召唤。另外,正如下面的评论所述,我可能会放弃在散列中使用IP地址,以允许用户保持从多个位置login(例如,他们的电话和他们的笔记本电脑)。 所以我的问题是: 我应该怎么检查我的会话是不是假的? 我应该如何检查我的cookies不是假的? 检查到位后,我的login方法是否足够安全? 我有什么重要的东西被遗漏了吗? 如果有什么你想问的,请让我知道在评论中,我会很乐意编辑我的问题,尽可能多的信息,我可以提供。

PHP会话与残疾的cookies,它的工作?

今天,我有一个作为PHP开发人员的Skype工作面试,其中一个问题是关于Cookies和PHP会话。 问题是,PHP会话可以设置和读取,使用,如果在用户浏览器禁用Cookie? 我不告诉他们,默认情况下PHP会话取决于设置会话cookie。 当PHP会话开始时,新会话Cookie被设置为默认名称PHPSESSID,并且该cookie保存该会话ID的值,例如:ftu63d8al491s5gatuobj39gk7然后在tmp文件夹文件中的apache服务器上创buildsess_ftu63d8al491s5gatuobj39gk7,并且它保存该会话的内容,例如:test1 | s:12:“SessionTest1”; test2 | s:12:“SessionTest2”; 他们告诉我这不是真的,即使用户在他的浏览器中禁用了cookies,也可以使用PHP Sessions。 然后我告诉他们你可以做到这一点,但是会话ID将作为GETvariables通过URL传递。 这不安全,你必须在php.ini中设置它。 他们正在谈论如何使用PHP会话,即使Cookies在浏览器中被禁用。 而如果我们正在build设网上商店,一些奶奶使用我们的网上商店,并禁用cookies,她不会在意。 而且PHP会话很棒,因为即使用户禁用Cookies,也可以使用它们。 我就像wtf,wtf wtf?!?! 我做了两个文件的testing,index.php启动会话并设置会话variables。 然后session.php尝试读取会话variables。 这是它的样子: 的index.php <p>This is where I start and set php sessions.</p> <?php session_start(); $_SESSION['test1'] = "SessionTest1"; $_SESSION['test2'] = "SessionTest2"; ?> <p>This is a link, that starts new HTTP Request, and tries to read session set […]