ldap 服务器无法访问导致 plone/zope 服务器关闭
ldap server unreachable cause plone/zope server down
我有一个带有 plone.app.ldap 附加组件的 plone 安装 (4.2.5)。有一个启用了 plone-ldap 的站点,我们的 ldap 服务器已更改为另一个 domain/IP。依此类推,zope 服务器在 plone-ldap 检索 ldap 信息时停止运行。即使是 root ZMI 也没什么用。
对服务器的任何请求在 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) client1/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"}**
先备份
免责声明 - 我以前从未见过 LDAP 配置还冻结根级管理员 ZMI 对 Plone 站点的访问。
我可以快速建议您从站点 acl_users 中删除 ldap 插件并从头开始。
由于 ZMI 不可用,您必须使用控制台访问。
为此 运行 zope 实例如下:
$ bin/instance debug
(其中 "instance" 是您的实例之一)
您可以删除 ldap 插件:
del app.Plone.acl_users['ldap-plugin-id']
其中 Plone
是您网站的 is,ldap-plugin-id
是 LDAP 插件的 is。
如果你不记得了,就在这组里找:
app.Plone.acl_users.objectValues()
最后你必须坚持你的改变:
import transaction;transaction.commit()
...然后使用 CTRL+D
退出
现在您必须能够访问 ZMI,并且您必须创建并重新配置一个新插件。
请注意:配置 LDAP 或 AD 插件时,请始终设置 "Connection timout" 和 "Operation timeout"。这可能就是您的访问尝试完全冻结实例的原因。
我有一个带有 plone.app.ldap 附加组件的 plone 安装 (4.2.5)。有一个启用了 plone-ldap 的站点,我们的 ldap 服务器已更改为另一个 domain/IP。依此类推,zope 服务器在 plone-ldap 检索 ldap 信息时停止运行。即使是 root ZMI 也没什么用。
对服务器的任何请求在 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) client1/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"}**
先备份
免责声明 - 我以前从未见过 LDAP 配置还冻结根级管理员 ZMI 对 Plone 站点的访问。
我可以快速建议您从站点 acl_users 中删除 ldap 插件并从头开始。
由于 ZMI 不可用,您必须使用控制台访问。 为此 运行 zope 实例如下:
$ bin/instance debug
(其中 "instance" 是您的实例之一)
您可以删除 ldap 插件:
del app.Plone.acl_users['ldap-plugin-id']
其中 Plone
是您网站的 is,ldap-plugin-id
是 LDAP 插件的 is。
如果你不记得了,就在这组里找:
app.Plone.acl_users.objectValues()
最后你必须坚持你的改变:
import transaction;transaction.commit()
...然后使用 CTRL+D
现在您必须能够访问 ZMI,并且您必须创建并重新配置一个新插件。
请注意:配置 LDAP 或 AD 插件时,请始终设置 "Connection timout" 和 "Operation timeout"。这可能就是您的访问尝试完全冻结实例的原因。