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 0
和session.gc_maxlifetime 1440 1440
session.cookie_lifetime 86400 86400
和session.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
看看这个页面,用户描述了类似的问题
安装设置完成后,重启即可解决问题。手动启动服务器确实会产生上述结果。当手动启动服务器时,肯定有些东西不能正确加载。
我希望还能帮到别人。