0

これは私の最初のピラミッド アプリケーションであり、見つけた解決策を試してみましたが、うまくいきませんでした。内部サーバーエラーが発生し続け、エラーログには次のように表示されます:

Tue Jul 31 02:02:23 2012] [error] [client 127.0.0.1]     import MySQLdb as mysql
[Tue Jul 31 02:02:23 2012] [error] [client 127.0.0.1]   File "build/bdist.macosx-10.7-            intel/egg/MySQLdb/__init__.py", line 19, in <module>
[Tue Jul 31 02:02:23 2012] [error] [client 127.0.0.1]   File "build/bdist.macosx-10.7-intel/egg/_mysql.py", line 7, in <module>
[Tue Jul 31 02:02:23 2012] [error] [client 127.0.0.1]   File "build/bdist.macosx-10.7-intel/egg/_mysql.py", line 6, in __bootstrap__
[Tue Jul 31 02:02:23 2012] [error] [client 127.0.0.1] ImportError: dlopen(/Users/anupamtulsyan/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg-tmp/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib
[Tue Jul 31 02:02:23 2012] [error] [client 127.0.0.1]   Referenced from: /Users/anupamtulsyan/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg-tmp/_mysql.so
[Tue Jul 31 02:02:23 2012] [error] [client 127.0.0.1]   Reason: image not found
[Tue Jul 31 02:02:24 2012] [error] [client 127.0.0.1] File does not exist: /opt/local/apache2/htdocs/favicon.ico

私のmysqlとpythonは両方とも64ビットのインストールです。ファイル「libmysqlclient.18.dylib」は /usr/local/mysql/lib にあります。../bin/pserver development.ini を使用して、アプリケーションの提供中に MySQLdb をインポートできます。ただし、mod_wsgi を実行すると、上記のエラーが発生し続けます。誰か助けてください!私は2日以来これにこだわっています。

4

1 に答える 1

2

libmysqlclient.18.dylibApache のパス上にないようです。/usr/sbin/envvarsしたがって、おそらく次のように設定する必要があります。

DYLD_LIBRARY_PATH="/usr/lib:/usr/local/mysql/lib:$DYLD_LIBRARY_PATH"

mysql lib の場所に応じて、apache を再起動します。

MySQLdbを構築する前に設定することもできると思いますDYLD_RUN_PATH._mysql.soでそのパスを使用します-設定する必要がなくなりますDYLD_LIBRARY_PATH

于 2012-08-06T07:35:28.380 に答える