Php Symfony会话值在特定服务器上丢失
摘要:在PHP Symfony 1.4.8上开发的应用程序会随机丢失Symfony会话值,但仅在特定的生产环境中丢失:数组Symfony/user/sfUser/attributes在用户身份验证后几秒钟或几分钟内变为空。问题不会在开发机器或任何其他生产环境中发生 很明显,问题是特定于故障服务器的,但是,我想知道是否有我可能缺少的任何PHP/Apache/Symfony配置可以解决故障服务器上的问题 服务器PHP信息失败:Php Symfony会话值在特定服务器上丢失,php,symfony-1.4,session-timeout,Php,Symfony 1.4,Session Timeout,摘要:在PHP Symfony 1.4.8上开发的应用程序会随机丢失Symfony会话值,但仅在特定的生产环境中丢失:数组Symfony/user/sfUser/attributes在用户身份验证后几秒钟或几分钟内变为空。问题不会在开发机器或任何其他生产环境中发生 很明显,问题是特定于故障服务器的,但是,我想知道是否有我可能缺少的任何PHP/Apache/Symfony配置可以解决故障服务器上的问题 服务器PHP信息失败: storage: class: sfSessionStora
storage:
class: sfSessionStorage
param:
session_name: webapp
user:
class: myUser
param:
timeout: 7200
- PHP版本5.3.10
- 系统SUNOS5.10
- Apache/1.3.41(Unix)PHP/5.3.10 mod_ssl/2.8.31 OpenSSL/0.9.8p
- 每个子级的最大请求数:0-保持活动状态:打开-每个连接的最大请求数:100
- 超时连接:300-保持活动状态:15
- 会话支持:已启用
- 已注册的存储处理程序:文件用户sqlite
- 已注册的序列化程序处理程序:php\u二进制文件
- session.cache_过期:180
- session.cache\u限制器:nocache
- session.cookie_生存期:0
- session.gc_除数:100
- session.gc_最大寿命:1440
- session.gc\u概率:1
- session.use_cookies:打开
- session.use_only_cookies:打开
storage:
class: sfSessionStorage
param:
session_name: webapp
user:
class: myUser
param:
timeout: 7200
- PHP版本5.2.17
- Linux系统2.6.32.59-sg2#3 SMP
- Apache/1.3.42(Unix)mod_gzip/1.3.26.1a mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 FrontPage/5.0.2.2635 mod_ssl/2.8.31 OpenSSL/0.9.8e-fips-rhel5
- 会话支持:已启用
- 已注册的存储处理程序:文件用户sqlite memcache
- 已注册的序列化程序处理程序:php\u二进制wddx
- session.cache_过期:180
- session.cache\u限制器:nocache
- session.cookie_生存期:0
- session.gc_除数:1000
- session.gc_最大寿命:1440
- session.gc\u概率:1
- session.use_cookies:打开
- session.use_only_cookies:关闭
storage:
class: sfSessionStorage
param:
session_name: webapp
user:
class: myUser
param:
timeout: 7200
我已经检查过这个类似的问题,但是我没有使用sfMemcacheCache类
如果您需要任何额外的信息来回答此问题,请告诉我。这可能是一个需要检查的明显问题,但可能是服务器磁盘空间不足 默认的会话存储是基于文件的,因此,如果您随机丢失数据,听起来好像您遇到了一些硬盘/文件系统问题
如果您仍感兴趣,可以尝试,希望是在不同的磁盘上。您可能需要在
factories.yml
文件中将以下设置设置为:
storage:
class: sfSessionStorage
param:
session_name: webapp
session_cookie_lifetime: 2678400 # number of seconds for 1 month
&然后删除您的
缓存
&重新加载网站,您的会话COOKIE将保持活动状态1个月。您是否尝试使用其他存储类?例如,像sfPDOSessionStorage一样,我们有相同的问题-但我们没有定义sfSessionStorage。@j0k不,我没有。。。我会尽力做到这一点,并让您保持联系…而且只有一台生产服务器,而不是几个?这涉及到某种类型的平衡负载,所以我假设它可能不止一台。。。