Aug16

【原创】为PHP增加LDAP扩展模块支持

Author: leeon  Click: 1456   Date: 2011.08.16 @ 19:39:35 pm Category: php

今日需要部署一套ldap的测试环境,但发现现有php并不支持ldap模块,遂打算重新编译so,但这种方式比较麻烦并且繁琐,如果仅仅是增加一个ldap模块可以通过phpize和configure的方式编译外挂加载ldap的so文件来使php支持ldap扩展拓展。

第一步是找到当前运营环境的php版本,并将此版本的源码包放入运营机器某个目录,解压。

第二步

 cd /xxx/xxx/php-5.2.17/ext/ldap/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-ldap

但是检查过程异常退出,提示如下错误:

 


checking for LDAP support... yes, shared
checking for LDAP Cyrus SASL support... no
checking for 3 arg ldap_set_rebind_proc... yes
checking for ldap_parse_result... no
checking for ldap_parse_reference... no
checking for ldap_start_tls_s... no
checking for ldap_bind_s... no
configure: error: LDAP build check failed. Please check config.log for more information.

始终验证不通过,这时候排查openldap2-devel版本,以为此版本比较老,就往高版本升级,但是依旧是同样的错误,最终排查觉得有可能是openldap2-client的版本和openldap2-devel版本不一致导致,于是在网上找了一个和client版本完全匹配的devel rpm包,重新configure顺利通过校验。这个问题比较奇怪,通常情况下编译php是不需要开发包和二进制包版本完全一致,但ldap的编译却需要client和devel包版本完全一致。 

记得在make ,make install之后在php.ini上将ldap.so写入extension扩展配置中。


TAG:   php ldap so ldap2-devel

    评论
    • 提交

    分类

    标签

    归档

    最新评论

    the5fire的博客在12:44:23评论了
    【原创】beautifulsoup解析中文网页乱码解决
    python在12:10:14评论了
    【原创】beautifulsoup解析中文网页乱码解决
    vls在18:02:38评论了
    【原创】使用STL来构造字符串split 和join方法
    john在10:43:23评论了
    【原创】php中ajax异步阻塞解决
    Fang在08:51:00评论了
    java was started but returned exit code=1问题解决小记

    我看过的书

    链接

    其他

    访问本站种子 本站平均热度:1414 c° 本站链接数:55 个 本站标签数:264 个 本站被评论次数:40 次