2010-06-28 48 views
0

我正在運行PHP(在Apache/Windows上),我試圖連接到LDAP服務器以對用戶進行身份驗證。 PHP的LDAP插件只是OpenLDAP。更改PHP插件配置(LDAP)

雖然我成功連接到沒有SSL的LDAP服務器,但我無法使用SSL來完成。我知道我的一切都正確,除非OpenLDAP不會連接到沒有CA證書的服務器。連接失敗,它給了我這個錯誤:

「錯誤:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:證書驗證失敗」

現在,我知道我可以通過設置TLS_REQCERT「never」中的抑制這種行爲ldap.conf文件。但是Windows上的插件只是一個dll文件;並且我不知道在哪裏放置.conf文件。有人知道嗎?

在此先感謝。

+0

是的,我已經看過插件配置文檔。我無法在php.ini上更改它,也無法在運行時更改它。顯然我唯一的希望是改變插件代碼並重新編譯整個事情 – quantumSoup 2010-06-28 21:23:19

回答

3

顯然,你需要在ldap.conf文件放到以下目錄:

C:\openldap\sysconf\ 

,因爲它是硬編碼到DLL文件。 PHP.net Manual: LDAP Functions - Comment #47427

+0

這不工作了。我猜他們改變了路徑。 無論哪種方式,我想出了一種在特定插件(LDAP)上執行此操作的方法。我可以在Windows上設置一些環境變量,並從中獲取它。 – quantumSoup 2010-06-29 18:21:09