PHP LDAP Admin - 未定义的变量:_SESSION

时间:2013-07-15 19:08:03

标签: php ldap

我正在尝试在RHEL 6服务器上安装PHP LDAP Admin http://phpldapadmin.sourceforge.net。我有文件到位,Apache虚拟主机指令配置为htdocs。

我得到的错误是:

Notice: Undefined variable: _SESSION in /path/to/pla/lib/page.php on line 381 Fatal error: 
Call to a member function getValue() on a non-object in /path/to/pla/lib/page.php on line 381

PHP(5.4.13)正在服务器上运行,并且会话在其他地方不是问题。我将我的git存储库克隆到一个OSX开发盒,它在那里工作。我仔细检查并调用了session_start()。

6 个答案:

答案 0 :(得分:5)

如果httpd在apache组下运行:

chgrp apache /etc/phpldapadmin/config.php

答案 1 :(得分:1)

我有同样的问题,最后我解决了它只是放置config.php 在正确的文件夹(phpldapadmin / config)...真是愚蠢的错误

答案 2 :(得分:1)

我遇到了同样的问题(ubuntu 14.04)。

我更改了usr / share / phpldapadmin / config.php的权限,解决了这个问题。

harveyzh已经回答了这个问题,但这个答案适用于像我这样的linux-noobs:)

答案 3 :(得分:0)

在更新后的大多数情况下都会发生  和apache(或php5-fpm!)没有默认用户运行。

只需将运行Apache2(或php5-fpm!)的用户添加到系统组" www-data" (debian)并重启服务apache AND如果使用php5-fpm两者。

获取用户apache正在运行:

~# sed -rn 's/^User (.+)/\1/p' /etc/apache2/apache2.conf

记住:  更改repo维护文件的权限是一个坏主意。  只有在下一次更新将它们恢复为默认值时才会生效...

答案 4 :(得分:0)

我也有同样的问题,我们刚刚更改了phpldapadmin config.php文件的组名。它对我有用。

chgrp apache /etc/phpldapadmin/config.php

答案 5 :(得分:0)

使用chgrp GNU命令,组名为apache2 就我而言:www-data

所以你需要这样做:

chgrp www-data /etc/phpldapadmin/config.php

要查找config.php的组名,您应该使用ls -l命令行并取第四列