【问题标题】:Pyramid framework : Apache + mod_wsgi - MySQLdb import error金字塔框架:Apache + mod_wsgi - MySQLdb 导入错误
【发布时间】:2012-07-30 20:41:51
【问题描述】:

这是我的第一个金字塔应用程序,我尝试了我能找到的任何解决方案,但没有一个对我有用。我不断收到内部服务器错误和错误日志显示:

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 中。 我可以在使用以下方式为应用程序提供服务时导入 MySQLdb: ../bin/pserver development.ini 但是,当通过 mod_wsgi 运行时,上述错误不断出现。请有人帮忙!自从 2 天以来,我一直坚持这一点。

【问题讨论】:

  • 这不是一个真正的答案,但我建议使用 nginx + uWSGI,它相当容易设置且速度很快。还可以考虑使用 virtualenvs。尝试使用 brew 或 macports 安装 nginx 和 python 并保持“默认”python 干净。使用默认的 osx 配置从来没有真正成功过。除了简单的 apache 东西。

标签: python apache mod-wsgi pyramid


【解决方案1】:

看起来libmysqlclient.18.dylib 不在 Apache 的路径上。所以你可能需要在/usr/sbin/envvars 中设置它,比如:

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

取决于你的 mysql 库在哪里,然后重启 apache。

我认为您也可以在构建 MySQLdb 之前设置 DYLD_RUN_PATH,它将使用 _mysql.so 中的该路径——无需设置 DYLD_LIBRARY_PATH

【讨论】:

    猜你喜欢
    • 2014-01-15
    • 2014-06-18
    • 1970-01-01
    • 2016-07-21
    • 1970-01-01
    • 1970-01-01
    • 2014-05-23
    • 2019-05-22
    • 2018-05-04
    相关资源
    最近更新 更多