我们使用 simple_ldap 配置了 Drupal 7 实例指向本地 OpenLDAP 的模块(在 Ubuntu 12.04.4 LTS 服务器上)。
当多个用户登录该网站并使用它时,计算机的CPU会变得疯狂:slapd
CPU 利用率接近 100%。
结果是Drupal站点响应速度非常慢(一页超过15秒...)
在 /var/log/syslog
我们可以看到:
Feb 20 14:56:53 cas slapd[2029]: <= bdb_equality_candidates: (uid) not indexed
Feb 20 14:56:53 cas slapd[2029]: <= bdb_equality_candidates: (mail) not indexed
Feb 20 14:56:53 cas slapd[2029]: <= bdb_equality_candidates: (member) not indexed
Feb 20 14:56:53 cas slapd[2029]: <= bdb_equality_candidates: (cn) not indexed
发生什么事了?
最佳答案
我们必须为此创建正确的索引。
如said here ,首先停止服务:
sudo service slapd stop
然后编辑 /etc/ldap/slapd.d/cn=config/olcDatabase={1}hdb.ldif
并添加(就在 olcDbIndex: objectClass eq
行之后):
...
olcDbIndex: uid eq
olcDbIndex: member eq
olcDbIndex: mail eq
olcDbIndex: cn eq
...
然后重新索引,设置正确的权限并重新启动服务:
sudo slapindex -F /etc/ldap/slapd.d
sudo chown -R openldap:openldap /var/lib/ldap
sudo service slapd start
sudo service apache2 restart
关于drupal-7 - slapd 使用 Drupal 7 和 simple_ldap 模块使用过多的 CPU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21940017/