例如在a页面设置了会话,然后打印会话值,可以成功打印,但是调转到b页面后,会话丢失了。

 

原因有不少,一个原因就是没有在页面开头加入session_start();当然你也可以直接配置php.ini文件,设置session_auto_start = on,这样就不需要在每个页面都session_start()了。

 

我遇到的是在本地虚拟机测试没有问题,但是转到外网测试后出现这个问题,解决方法如下

首先找到session的保存路径,echo phpinfo();然后找到

session.save_path

/var/lib/php/session /var/lib/php/session
可以看到我的session路径是这个,可是当我ls /var/lib/php之后就没有东西了,问题就出在这里

mkdir session创建这个文件夹,为了保险(方便)起见,我直接授权777,然后重启一下服务器,(具体重启nginx还是php-fpm我也不是很清楚啊),搞定

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐