环境:阿里云ESC服务器、LNMP架构。
今天在lnmp环境下装phpMyAdmin时,打开浏览器访问遇到下面的报错
Error during session start; please check your PHP and/or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser.
session_start(): open(SESSION_FILE, O_RDWR) failed: No such file or directory (2)
session_start(): Failed to read session data: files (path: /var/lib/php/session)
出现问题的原因:
一般出现这种情况,都是<span style="color:
#ff0000;">session.save_path</span>赋值的问题,可以session的保存位置为空,也可能目标地址不存在,还可能是权限问题,我们需要一个一个的排查。
顺便再说一下,“session.save_path”是在/etc/php.ini设置的,大家可以去自己的/etc/php.ini文件里查看相应的配置。
解决办法:
通过上面可以清楚的知道原因,自然解决就容易多了,根据我多年的经验,很多人遇到这种情况通常都是权限以及session保存位置的问题,赋值的问题几乎没有
1.根据上面报错,首先去看“/var/lib/php/session”这个目录是否存在?然而,我这里是没有session这个目录的,需要自己建立。
[root@ilinux ~]# cd /var/lib/php/
[root@ilinux php]# ls
[root@ilinux php]# mkdir session
2.如果只是这样修改,刷新页面后,又会出现新的报错。
出现这个报错的原因是“/var/lib/php/session”这个session目录的权限不够,所以我们给session目录授权。
在此呢,关于权限的问题,跟lnmp环境有关,我的主机是nginx用户作为服务的属主和数组,所以我直接给session目录属主、数组修改为nginx就可以了。
如是不清楚该怎么改,就直接给session目录777权限即可
[root@ilinux php]# chmod -R 777 session/
3.重新刷新一下网页,就已经可以进入phpMyAdmin的登录界面了