我在一个项目上安装了Kunstmaan CMS软件包(Symfony 2.4版本),该项目在几天前进行系统更新之前一直运行正常;现在,当我尝试登录管理面板(/ en / admin; / en / login)时,我会以匿名用户的身份重定向到主页,除非我明确检查"记住我"登录表单中的选项。
同一问题同时出现在使用这些捆绑包的所有项目中,包括那些在几周内未被修改的项目。
管理员用户last_login 在数据库中被修改,因此它已成功验证登录凭据,但用户会话未更新。
我在VM上运行CentOS 6.5,以下软件包都是那些似乎与网络托管环境有关的更新软件包:
httpd 2.2.15-31.el6.centos.x86_64
nodejs 0.10.29-1.el6.x86_64
nodejs-devel 0.10.29-1.el6.x86_64
nodejs-packaging 7-1.el6.noarch
php54w-5.4.30-1.w6.x86_64
php54w-cli-5.4.30-1.w6.x86_64
php54w-common-5.4.30-1.w6.x86_64
php54w-gd-5.4.30-1.w6.x86_64
php54w-intl-5.4.30-1.w6.x86_64
php54w-mbstring-5.4.30-1.w6.x86_64
php54w-mysql-5.4.30-1.w6.x86_64
php54w-pdo-5.4.30-1.w6.x86_64
php54w-process-5.4.30-1.w6.x86_64
php54w-tidy-5.4.30-1.w6.x86_64
php54w-xml-5.4.30-1.w6.x86_64
问题出现在所有浏览器中。
我已经把头发拉了几个小时,所以如果有人有任何想法,我们将不胜感激。
感谢。
答案 0 :(得分:1)
发现问题。
我的项目是将会话保存到%kernel.cache_dir%/ sessions。因为我在虚拟机中托管项目,但是从我的工作站正确编辑文件,我项目目录中的权限结构有点奇怪; Apache运行为apache:apache,而session dir的所有权为1000:1000,其中的会话文件为rw ------- 1000:1000。 Apache无法写入这些文件。
之前一直运行良好,所以在我上次的系统更新中,某些东西显然要么在某处更改了权限结构,要么开始更严格地执行一个没有业务工作的混乱系统。
我没有使用该目录中的权限,而是更改了symfony框架配置:
framework:
session:
save_path: /tmp/myprojectname
问题解决了,我可以正常登录。
答案 1 :(得分:0)
你应该修复你的/path/to/app
例如。 http://127.0.0.1:8888/web/app_dev.php/en/admin/login
如果您仍然遇到问题:我已记录了我的笔记here。