2016-06-07 105 views
0

我有一个plone安装(4.2.5)与plone.app.ldap加载项。有一个启用了plone-ldap的站点,我们的ldap服务器已更改为另一个域/ IP。因此,zope服务器在plone-ldap上检索ldap信息。甚至根ZMI也没有更多的工作。ldap服务器无法访问导致plone/zope服务器down

任何对服务器的请求在plone重启后几秒钟都不会加载。因此,我无法通过我们的站点或ZMI界面重新配置我们的新ldap服务器。

在这种情况下,如何继续在plone-ldap组件上重新配置新的ldap服务器?是否有类似于ZMI的脚本应用程序来执行此操作?这是一个已知的错误吗?

一些日志:

1)Zeoserver.log

2016-06-06T15:52:04 new connection ('127.0.0.1', 40051): <ManagedServerConnection ('127.0.0.1', 40051)> 
2016-06-06T15:52:04 (127.0.0.1:40049) received handshake 'Z3101' 
2016-06-06T15:52:04 (unconnected) disconnected 
2016-06-06T15:52:04 (unconnected) disconnected 
2016-06-06T15:52:08 new connection ('127.0.0.1', 40052): <ManagedServerConnection ('127.0.0.1', 40052)> 
2016-06-06T15:52:08 new connection ('127.0.0.1', 40053): <ManagedServerConnection ('127.0.0.1', 40053)> 
2016-06-06T15:52:08 new connection ('127.0.0.1', 40054): **<ManagedServerConnection ('127.0.0.1', 40054)> 
2016-06-06T15:52:08 (127.0.0.1:40052) received handshake 'Z3101' 
2016-06-06T15:52:08 (unconnected) disconnected 
2016-06-06T15:52:08 (unconnected) disconnected** 

2)客户端1/event.log

2016-06-06T15:53:12 ERROR event.LDAPDelegate {'desc': "Can't contact LDAP server"} 
Traceback (most recent call last): 
    File "/usr/local/Plone/buildout-cache/eggs/Products.LDAPUserFolder-2.26-py2.7.egg/Products/LDAPUserFolder/LDAPDelegate.py", line 366, in search 
    connection = self.connect(bind_dn=bind_dn, bind_pwd=bind_pwd) 
    File "/usr/local/Plone/buildout-cache/eggs/Products.LDAPUserFolder-2.26-py2.7.egg/Products/LDAPUserFolder/LDAPDelegate.py", line 265, in connect 
    raise e 
**SERVER_DOWN: {'desc': "Can't contact LDAP server"}** 
+0

您是否尝试使用具有基本身份验证的“admin”用户访问ZMI Zope根? –

+0

是的,它可以工作,但在访问站点对象时会下降服务器。我找到了[bug 1218938](https://bugs.launchpad.net/ldapuserfolder/+bug/1218938),但它并没有给我带来好的解决方案。 – gwarah

+0

“你放弃了服务器”是什么意思? –

回答

2

备份第一

声明 - I从来没有见过面n也可冻结对Plone站点的根级管理员ZMI访问的LDAP配置。

我可以很快建议你从网站的acl_users中删除ldap插件,并从头开始。

由于ZMI不可用,您必须使用控制台访问权限。 这样做运行Zope实例如下:

$ bin/instance debug 

(其中 “实例” 是你的一个实例)

的可以删除LDAP插件:

del app.Plone.acl_users['ldap-plugin-id'] 

Plone是您的网站和ldap-plugin-id是LDAP插件。使用CTRL+D

import transaction;transaction.commit() 

...然后退出现在你: 如果你不记得了,寻找它在这组:

app.Plone.acl_users.objectValues() 

最后,你必须坚持你的变化必须能够访问ZMI,并且您必须创建并重新配置新的插件。

请注意:配置LDAP或AD插件时,请始终设置“连接时间”和“操作超时”。这可能是您的访问尝试完全冻结实例的原因。

+0

是否需要运行构建(无ldap插件)和/或inst。这些命令后重新启动? – gwarah

+0

不,你不知道:LDAP配置是存在于ZODB存储内的东西 –

+0

已解决@keul。插件删除和网站/ zmi再次访问。上面的命令“$ bin/instance debug”只是一个更正。你见过上面提到的[launchpad bug 1218938](http://bugs.launchpad.net/ldapuserfolder/+bug/1218938)吗?这可能是造成这个问题的原因。 – gwarah