PHP.ini示例来启用会话


PHP.ini example to enable sessions?

PHP新手在这里,但我在网上找不到直接的答案。给定下面的phpinfo会话部分,我需要在php.ini中以最基本的方式启用会话?谢谢:)

Session Support enabled
Registered save handlers    files user
Registered serializer handlers  php php_binary wddx
Directive   Local Value Master Value
session.auto_start  Off Off
session.bug_compat_42   On  On
session.bug_compat_warn On  On
session.cache_expire    180 180
session.cache_limiter   nocache nocache
session.cookie_domain   no value    no value
session.cookie_httponly Off Off
session.cookie_lifetime 0   0
session.cookie_path /   /
session.cookie_secure   Off Off
session.entropy_file    no value    no value
session.entropy_length  0   0
session.gc_divisor  100 100
session.gc_maxlifetime  1440    1440
session.gc_probability  1   1
session.hash_bits_per_character 4   4
session.hash_function   0   0
session.name    PHPSESSID   PHPSESSID
session.referer_check   no value    no value
session.save_handler    files   files
session.save_path   no value    no value
session.serialize_handler   php php
session.use_cookies On  On
session.use_only_cookies    On  On
session.use_trans_sid   0   0

PHP安装不需要任何特殊配置来启用会话。

你应该确保你有session_start();作为你打算使用会话的任何页面的第一行;它应该是在任何空格(例如空行)之前的第一行。

我猜你必须增加你的会话如下:

session.cookie_lifetime 0 0session.gc_maxlifetime 1440 1440

session.cookie_lifetime 86400 86400session.gc_maxlifetime 86400 86400累计。

86400表示1天。

这将允许你的系统使用"session_start()",它将有1天的寿命。

有以下用于存储会话数据的内置选项。会话处理程序在php.ini中

指令下设置。
session.save_handler

你也可以给sqlite db来存储你的会话,如

session.save_handler = sqlite
session.save_path = /tmp/phpsess.db

当前的save_handler设置为在系统上的文件中存储会话日期。问题是,你的save_path看起来像它目前没有一个值。您需要添加一个save_path,以便PHP知道将这些文件放在哪里。

PHP: Runtime Configuration #session.save_path

看看这个页面,用户描述了类似的问题

安装设置完成后,重启即可解决问题。手动启动服务器确实会产生上述结果。当手动启动服务器时,肯定有些东西不能正确加载。

我希望还能帮到别人。