IIS 2019 上的 PHP 8:有时 Session 无法写入

问题描述 投票:0回答:2

我的应用程序在 IIS 2019 的 php 8 上运行时,有时会出现经典的“无法读取会话数据”错误。这通常与 a) 目录不存在 b) 未设置权限有关。我可以排除这两种情况。

会话存储在 c:/Temp/phpsessions 中。所有读/写权限均已正确设置。大多数时候没有问题。但是如果用户有一段时间没有登录,我会收到以下警告并且该应用程序无法运行。

PHP Warning: session_start():open(C:\temp\phpsessions\sess_221kd8pv25fvefq@tnph9fhoss,O_RDWR)failed:Permission denied(13)...

同样,session_path 是在 php.ini 中设置的,大多数时候一切正常。我想也许会话密钥不再有相应的会话文件了。但这不应该产生一个错误,而是一个新的会话。我错过了什么?

我尝试存储会话变量并使用 session_start() 启动会话。我希望旧会话无效并且不会导致权限被拒绝警告。我希望创建一个新的空会话。

php session iis-10
2个回答
1
投票

“无法读取会话数据”错误的发生可能有多种原因,它可能是由 PHP 进程的错误配置引起的。检查 PHP 进程处理程序中的 session_handler 参数。有关更多信息,请参阅此文档。希望这个想法对你有帮助。


0
投票

我们在经过身份验证的用户的权限方面存在问题。每个人都应该可以访问临时文件夹,但该文件夹似乎已被删除并以不同的权限重新创建。使用计算机的奥秘......

© www.soinside.com 2019 - 2024. All rights reserved.