1

Python 2.43 を搭載した RHEL 5 でDjango アプリケーション ( OSQA ) にmod_wsgi を使用しています (アップグレードできません)。

サイトをセットアップして正常に動作させた後、認証を python-ldap と統合して、ユーザー名、電子メールアドレスなどの Active Directory 属性にアクセスしようとしました。

Apache httpd がクラッシュし、次のメッセージが表示されます。

[notice] child pid 18705 exit signal Segmentation fault (11)

私は当初、これは Apache と Python の間の expat ライブラリの不一致によるものだと考えていましたが、その後、pyexpat の Python バージョン (1.95.8) と一致するように libexpat.so モジュールをアップグレードしました。

django ログの大量のログから、次の行が実行されるとセグ フォールトが発生することがわかります。

con = ldap.initialize(AD_LDAP_URL)

この問題を引き起こしている python-ldap に固有のものはありますか? デバッグ方法について他に何か考えはありますか?

ありがとう

4

1 に答える 1

1

LDAP を使用する認証用の Apache モジュールを無効にしてみてください。また、mod_php が使用されていて、LDAP 拡張機能をロードしている場合は、無効にしてみてください。つまり、ライブラリのバージョンの競合は、expat ではなく LDAP ライブラリが原因である可能性があるため、他の Apache モジュールを無効にして、問題が解決するかどうかを確認してください。そうすれば絞れます。

于 2011-03-03T20:57:33.910 に答える