Windows下Apache + PHP SESSION丢失的解决过程全纪录,apache全纪录
今天的工作是迁移一个PHP站点至新服务器。
创建一台Windows Server 2008虚拟机,并在其上停掉net stop http服务(避免争抢80端口),安装配置 Apache + PHP,迁移站点至新服务器,站点正常打开,Apache + PHP运行正常,连接MySql Server正常,一切都美好,本想着半小时完成的工作,紧接着噩梦开始了。
该站点使用单点登录,登录过程包含JavaScript异步操作,包含SOAP调用Web Service。登录却直接跳回了登录页面,没有任何错误提示,考虑了以下可能:
1、是账户异常?在其他系统测试,账户状态正常。
2、是JavaScript异步操作失败?用IE开发人员工具跟踪Javascript返回值,返回值正常。
3、是Web Service调用失败?用Fiddler跟踪Web Service的返回值,表明已经验证成功,已经完成本地登录。
反复跟踪调试,才开始怀疑该站点SESSION丢失了:
1、JavaScript异步操作设置SESSION失败,难道是因为同步访问和异步访问的SESSION ID是不同造成的?这在Flash中进行异步调用才出现过,JavaScript也会吗?输出同步访问和异步访问的SESSION ID值是一样的。
2、建2个PHP测试页面,在一个页面中设置SESSION,在另一个页面中却读不到。检查php.ini相关设置,看起来是正常的,查看session.save_path = "C:/php/tmp"路径,却果真没有SESSION相关的文件,设置连tmp目录都没有。
结局令人啼笑皆非,没有tmp目录,PHP无法写入SESSION文件,自然SESSION就丢失了。为什么没有tmp目录,因为安装包里没有……我的3小时。
以上所述就是本文的全部内容了,希望能够对大家学习php有所帮助。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SublimeText3漢化版
中文版,非常好用

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具