You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OCS Inventory NG 2.12.1配置LDAP+SSO后空白页问题求助

OCS Inventory NG 2.12.1 LDAP+SSO配置空白页问题排查

环境信息

  • OCS Inventory NG 版本:2.12.1
  • Active Directory 版本:2012

关于LDAP+SSO支持说明

OCS Inventory NG 2.12.1支持LDAP+SSO(Kerberos/mod_auth_gssapi)认证,define('AUTH_TYPE', 4);正是对应SSO认证模式的配置项。

空白页问题排查步骤

1. 查看Apache错误日志定位根源

空白页多数是服务器端报错导致,优先检查Apache错误日志:

tail -f /var/log/apache2/error.log

刷新空白页,查看是否有PHP致命错误、权限异常或SSO相关报错,比如文件读取权限不足、变量未定义等。

2. 验证OCS配置文件完整性与权限

  • 确认/usr/share/ocsinventory-reports/ocsreports/var.php中仅设置了define('AUTH_TYPE', 4);,无其他冲突的认证配置项
  • 确保Apache运行用户(通常为www-data)拥有该文件的读取权限:
    chown www-data:www-data /usr/share/ocsinventory-reports/ocsreports/var.php
    chmod 644 /usr/share/ocsinventory-reports/ocsreports/var.php
    

3. 确认Apache正确传递认证用户信息

OCS需要从Apache获取SSO认证后的用户名,检查虚拟主机配置是否包含以下内容:

<Location /ocsreports>
    AuthType GSSAPI
    AuthName "OCS Inventory SSO"
    GssapiCredStore keytab:/etc/apache2/httpd.keytab
    GssapiNegotiateOnce On
    Require valid-user
    # 确保用户名传递给PHP
    SetEnv REMOTE_USER %{REMOTE_USER}s
</Location>

可创建测试文件验证用户信息传递:在/var/www/html下新建test_sso.php,内容为:

<?php echo $_SERVER['REMOTE_USER']; ?>

访问该文件,确认能输出当前AD用户名(格式如DOMAIN\username或username@domain.com)。

4. 检查OCS用户映射匹配

  • 确保AD用户名已在OCS系统中存在,或在OCS后台(管理→配置→LDAP配置)开启了自动创建用户选项
  • 注意用户名格式一致性,比如OCS内用户名是小写,AD返回大写可能导致匹配失败,进而引发空白页

5. 临时开启PHP错误显示

修改对应PHP版本的php.ini文件(如/etc/php/7.4/apache2/php.ini):

display_errors = On
error_reporting = E_ALL

重启Apache后刷新空白页,直接查看具体错误信息,快速定位问题。

内容的提问来源于stack exchange,提问作者Timur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 17:02:23