`

php session配置

    博客分类:
  • php
 
阅读更多

转自: http://blog.csdn.net/jallin2001/article/details/5547366 

 

Session]
; 除非使用session_register()或$_SESSION注册了一个变量。
; 否则不管是否使用了session_start(),都不会自动添加任何session记录。
; 包括resource变量或有循环引用的对象包含指向自身的引用的对象,不能保存在会话中。
; register_globals指令会影响到会话变量的存储和恢复。

session.save_handler = "files"
; 存储和检索与会话关联的数据的处理器名字。默认为文件("files")。
; 如果想要使用自定义的处理器(如基于数据库的处理器),可用"user"。
; 有一个使用PostgreSQL的处理器:http://sourceforge.net/projects/phpform-ext/

session.save_path = "/tmp"
; 传递给存储处理器的参数。对于files处理器,此值是创建会话数据文件的路径。
; Windows下默认为临时文件夹路径。
; 你可以使用"N;[MODE;]/path"这样模式定义该路径(N是一个整数)。
; N表示使用N层深度的子目录,而不是将所有数据文件都保存在一个目录下。
; [MODE;]可选,必须使用8进制数,默认600(=384),表示每个目录下最多保存的会话文件数量。
; 这是一个提高大量会话性能的好主意。
; 注意0: "N;[MODE;]/path"两边的双引号不能省略。
; 注意1: [MODE;]并不会改写进程的umask。
; 注意2: php不会自动创建这些文件夹结构。请使用ext/session目录下的mod_files.sh脚本创建。
; 注意3: 如果该文件夹可以被不安全的用户访问(比如默认的"/tmp"),那么将会带来安全漏洞。
; 注意4: 当N>0时自动垃圾回收将会失效,具体参见下面有关垃圾搜集的部分。

session.name = "PHPSESSID"
;用在cookie里的会话ID标识名,只能包含字母和数字。

session.auto_start = Off
; 在客户访问任何页面时都自动初始化会话,默认禁止。
; 因为类定义必须在会话启动之前被载入,所以若打开这个选项,你就不能在会话中存放对象。

session.serialize_handler = "php"
; 用来序列化/解序列化数据的处理器,php是标准序列化/解序列化处理器。
; 另外还可以使用"php_binary"。当启用了WDDX支持以后,将只能使用"wddx"。

session.gc_probability = 1
session.gc_divisor = 100
; 定义在每次初始化会话时,启动垃圾回收程序的概率。
; 这个收集概率计算公式如下:session.gc_probability/session.gc_divisor
; 对会话页面访问越频繁,概率就应当越小。建议值为1/1000~5000。

session.gc_maxlifetime = 1440
; 超过此参数所指的秒数后,保存的数据将被视为'垃圾'并由垃圾回收程序清理。
; 判断标准是最后访问数据的时间(对于FAT文件系统是最后刷新数据的时间)。
; 如果多个脚本共享同一个session.save_path目录但session.gc_maxlifetime不同,
; 那么将以所有session.gc_maxlifetime指令中的最小值为准。
; 如果使用多层子目录来存储数据文件,垃圾回收程序不会自动启动。
; 你必须使用一个你自己编写的shell脚本、cron项或者其他办法来执行垃圾搜集。
; 比如,下面的脚本相当于设置了"session.gc_maxlifetime=1440" (24分钟):
; cd /path/to/sessions; find -cmin +24 | xargs rm

session.referer_check =
; 如果请求头中的"Referer"字段不包含此处指定的字符串则会话ID将被视为无效。
; 注意:如果请求头中根本不存在"Referer"字段的话,会话ID将仍将被视为有效。
; 默认为空,即不做检查(全部视为有效)。

session.entropy_file = ;"/dev/urandom"
; 附加的用于创建会话ID的外部高熵值资源(文件),
; 例如UNIX系统上的"/dev/random"或"/dev/urandom"

session.entropy_length = 0
; 从高熵值资源中读取的字节数(建议值:16)。

session.use_cookies = On
; 是否使用cookie在客户端保存会话ID

session.use_only_cookies = Off
; 是否仅仅使用cookie在客户端保存会话ID
; 打开这个选项可以避免使用URL传递会话带来的安全问题。
; 但是禁用Cookie的客户端将使会话无法工作。

session.cookie_lifetime = 0
; 传递会话ID的Cookie有效期(秒),0 表示仅在浏览器打开期间有效。

session.cookie_path = "/"
; 传递会话ID的Cookie作用路径。

session.cookie_domain =
; 传递会话ID的Cookie作用域。
; 默认为空表示表示根据cookie规范生成的主机名。

session.cookie_secure = Off
; 是否仅仅通过安全连接(https)发送cookie。

session.cookie_httponly = Off
; 是否在cookie中添加httpOnly标志(仅允许HTTP协议访问),
; 这将导致客户端脚本(JavaScript等)无法访问该cookie。
; 打开该指令可以有效预防通过XSS攻击劫持会话ID。

session.cache_limiter = "nocache"
; 设为{nocache|private|public}以指定会话页面的缓存控制模式,
; 或者设为空以阻止在http应答头中发送禁用缓存的命令。

session.cache_expire = 180
; 指定会话页面在客户端cache中的有效期限(分钟)
; session.cache_limiter=nocache时,此处设置无效。

session.use_trans_sid = Off
; 是否使用明码在URL中显示SID(会话ID)。
; 默认是禁止的,因为它会给你的用户带来安全危险:
; 1- 用户可能将包含有效sid的URL通过email/irc/QQ/MSN…途径告诉给其他人。
; 2- 包含有效sid的URL可能会被保存在公用电脑上。
; 3- 用户可能保存带有固定不变sid的URL在他们的收藏夹或者浏览历史纪录里面。
; 基于URL的会话管理总是比基于Cookie的会话管理有更多的风险,所以应当禁用。

session.bug_compat_42 = On
session.bug_compat_warn = On
; PHP4.2之前的版本有一个未注明的"BUG":
; 即使在register_globals=Off的情况下也允许初始化全局session变量,
; 如果你在PHP4.3之后的版本中使用这个特性,会显示一条警告。
; 建议关闭该"BUG"并显示警告。

session.hash_function = 0
; 生成SID的散列算法。SHA-1的安全性更高一些
; 0: MD5 (128 bits)
; 1: SHA-1 (160 bits)
; 建议使用SHA-1。

session.hash_bits_per_character = 4
; 指定在SID字符串中的每个字符内保存多少bit,
; 这些二进制数是hash函数的运算结果。
; 4: 0-9, a-f
; 5: 0-9, a-v
; 6: 0-9, a-z, A-Z, "-", ","
; 建议值为 5

url_rewriter.tags = "a=href,area=href,frame=src,form=,fieldset="
; 此指令属于PHP核心部分,并不属于Session模块。
; 指定重写哪些HTML标签来包含SID(仅当session.use_trans_sid=On时有效)
; form和fieldset比较特殊:
; 如果你包含他们,URL重写器将添加一个隐藏的"<input>",它包含了本应当额外追加到URL上的信息。
; 如果要符合XHTML标准,请去掉form项并在表单字段前后加上<fieldset>标记。
; 注意:所有合法的项都需要一个等号(即使后面没有值)。
; 推荐值为"a=href,area=href,frame=src,input=src,form=fakeentry"。

分享到:
评论

相关推荐

    PHP Session的配置与应用

    2. **设置Session配置**:PHP的Session配置可以通过修改php.ini文件进行。例如,可以设置`session.save_path`来指定Session数据的存储路径,`session.cookie_lifetime`来设定Cookie的生命周期,`session.gc_...

    PHP的session基础

    **PHP的Session基础** 在Web开发中,PHP的Session机制是一种非常重要的用户状态...在实际项目中,还需考虑Session的存储方式(默认为文件系统,也可以配置为数据库)、Session超时设置以及防止Session劫持的安全措施。

    php session操作类

    1. **初始化Session**:类中可能会有一个初始化方法,用于开启Session并设置默认配置,例如设置Session保存路径、生命周期、是否使用cookie等。 2. **设置Session值**:类可能会提供一个`set_session_data`方法,...

    php清除session

    在PHP编程中,Session是用于...在遇到问题时,应检查服务器环境、session配置、cookie处理以及可能的外部影响因素,如缓存和CDN。只有全面理解并掌握这些知识点,才能有效地解决PHP Session管理中可能出现的各种问题。

    php mysql数据库 存储session

    1. **配置session处理**:修改PHP的session配置,设置session.save_handler为"sql_session"(假设我们有一个自定义的session处理器),并且设置session.save_path为数据库连接字符串。 2. **创建session表**:在...

    PHP基于memcahe的session方法重写

    在PHP开发中,Session管理是不可或缺的一部分,尤其是在大型分布式系统中。传统的session存储方式,如文件或数据库,可能无法满足高并发、高可用性的需求。为了解决这个问题,我们可以利用memcache(或其升级版...

    PHP实现多服务器session共享之memcache共享.rar

    总的来说,"PHP实现多服务器session共享之memcache共享"这个主题涵盖的知识点包括:session管理、分布式存储、memcache的使用、PHP配置、并发控制以及系统扩展性设计。掌握这些知识对于构建高可用、可扩展的Web应用...

    php中精确控制session超时时间

    3. **利用`session_start()`时的检查**:除了配置项,还可以在每次`session_start()`时检查session的最后活跃时间。如果超过预设的过期时间,可以手动销毁session。这需要在代码中添加逻辑,例如: ```php if (is...

    PHP环境搭建:Win7下安装配置PHP+Apache+Mysql环境教程

    在配置PHP的Session功能时,我们需要指定session文件的保存目录。在配置PHP的文件上传功能时,我们需要指定临时文件夹以完成文件上传功能。 总结 通过本教程,我们可以了解到如何在Windows 7下安装和配置PHP、...

    PHP_实现多服务器共享_SESSION_数据.rar

    通过在所有服务器上配置相同的SESSION处理函数,使得每次新的SESSION数据都会写入这个中心存储,而读取时也从这里获取。这样,无论用户请求被路由到哪台服务器,都能获取到一致的SESSION信息。 对于数据库存储,...

    PHP100视频教程 32:PHP5中Cookie与 Session详解

    但session id是存放在client cookie的,当然php的session存放方法是多样化的,这样就算禁用cookie一样可以跟踪Cookie是完全保持在客户端的如:IE firefox 当客户端禁止cookie时将不能再使用2、Cookie的配置与应用 ...

    php session 多服务器的共享

    4. **设置Session配置**: 使用`session_set_save_handler`函数注册自定义的`MemcacheSession`类作为Session处理器,并设置Session名称和过期时间。 ```php session_set_save_handler(new MemcacheSession(), ...

    phpcms web发布session过期问题解决

    在phpcms中,session配置可以在`config.php`或`phpcms/inc.php`等配置文件中找到。可以调整以下参数来解决session过期问题: 1. `session.gc_maxlifetime`:这是PHP的默认session过期时间,单位为秒。增大这个值...

    session与cookie的区别以及配置使用

    php中session与cookie的区别以及配置使用

    常用跨域共用session的是登录模块

    常用跨域共用session的是登录模块,我相信很多开发的朋友的都遇到过,只需要一个地方登录,相关联的网站也是处于登录状态。... 方式一: 在一,二级域名下调用如下代码: ... * 设置session配置 */

    PHP SESSION 代码

    5. **Session配置** - 可以通过`session.cookie_lifetime`设置Session ID的cookie过期时间。 - `session.save_path`定义Session数据的存储位置,可以是文件路径或数据库连接。 - `session.use_cookies`控制是否...

    ext session失效 页面跳转

    这通常可以通过配置服务器的Session管理模块来完成,比如在PHP中设置`session.cookie_lifetime`和`session.gc_maxlifetime`,或者在Java的Servlet容器中配置Session配置。当Session超时,服务器会清除相关的Session...

    php环境配置自己写的 文档

    在配置PHP运行环境时,首先我们需要了解PHP环境的基本构成,它通常包括Web服务器(如Apache)和PHP解释器。在这个过程中,我们将按照特定的步骤来安装和配置这些组件。 第一步是安装Apache服务器。这里选择了Apache...

    phpCAS源码以及调用示例(redis管理session,解决无法logout的问题)

    要在phpCAS中使用Redis,你需要配置phpCAS的session handler,指定使用`session_set_save_handler`函数,并实现相应的session保存和恢复方法,将这些方法指向Redis客户端库,如Predis或phpredis。 解决phpCAS无法...

    php中设置多级目录session的问题

    但是php不会自动生成目录结构,这时可以借助源码包 ext/session 目录下的 mod_files.sh 来生成目录 $ bash mod_files.sh /tmp/session 3 生成完成后发现仍然不能生成session,纠结了半天,打开mod_files.bat才发现...

Global site tag (gtag.js) - Google Analytics