建站百科Website News

当前位置:首页 »Nginx+php网站获取不到session解决方法

Nginx+php网站获取不到session解决方法

至成科技2015-12-26访问量(4028)评论(0)
摘要:
    今天在公司服务器上面搭建一个测试网站的时候,遇到了一个小问题,就是网站后台登录的时候验证码一直提示错误!明明输的是正确的,而且账号密码也正确,可就是一直提示验证码不正确!
    之前是在centos+apache+php+mysql的环境下搭建的网站,测试时没有出现这种问题,现在迁移到centos+nginx+php+mysql的服务器上就出现了问题,难道是nginx配置有问题?登录服务器仔细查看相关配置文件,检查GD库是否开启,验证码已经可以显示了,所以不会是GD库的问题了。(如果不知道GD库是否开启,可以在网站根目录下写一个phpinfo的文件查看一下)。
    会后台登录时无法获取到session的问题!oh my god!速速上服务器用date命令查看服务器不会是程序本身有问题?因为在apache下是正常的,迁移到nginx下就出问题了。好吧,去研发部跟程序沟通下,较后得知是时间是否跟本地时间一致,检查php配置文件session存储的路径是否正确,检查session存储的文件夹是否有可写的权限,可是没有问题,这些都是正确的!
    好吧,重点就在下面:
    猛然想起在配置nginx+php的时候修改/etc/php-fpm.d/www.conf所属用户和组用户,如下
; RPM: apache Choosed to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

那么,后台登录无法获取到session是跟所属组和所属用户有关吗?检查服务器上存储session的文件属性,如下图,


修改session文件夹的属性
命令 chown –R nginx:nginx session
重启php-fpm service php-fpm restart
重启nginx   service nginx restart
(注意:这里我是在php的配置文件把session存储的路径修改为/var/lib/php)
再次访问后台,登录一切正常!

希望遇到上述问题的朋友按照上面的方法去排查,就能解决问题!

*本文由至成科技原创编辑,请尊重版权,如需转摘请注明出处,谢谢配合!*

扫描左侧二维码
关注至成微信公众号

西安至成信息科技有限公司  Copyright 2012-2025  xazcit.com  All rights reserved.

Email:zcit@zcit.net     邮政编码:710016     《中华人民共和国增值电信业务经营许可证》陕B1.B2-20140011     陕ICP备12008874号-1

联系地址:西安市经开区凤城四路西安国际企业中心B座23层06-10室    售前咨询热线:02989390727    售后服务电话:02989390727

西安网站建设、网站设计制作公司-至成科技,已为众多企业提供网站建设网站制作响应式网站设计手机网站建设虚拟主机云主机服务器租用等建站解决方案。

域名合作伙伴:新网互联软件服务有限公司 陕公网安备 61019102000393号

网络警察12321垃圾信息举报不良信息举报中国文明网西安工商高新技术企业证书