D'abord, je vais énumérer mon environnement et de l'état:mod_wsgi ne peut pas charger mysql
Environnement:
- Système: Mac OS 10.6
- Python: 2.6
- Apache: 2.2
- mod_wsgi: 3,3
- mysql: 5.x
- php: 3,5
- porteur: 0,12
Statut: je peux courir comme seul-trac serveur sans problème. Maintenant, j'intègre trac à apache, problème sortir. mod_wsgi peut exécuter une page wsgi normale correctement, mais ne peut pas charger la connexion mysql. Je l'ai testé en morceau de code, mettre "importer MySQLdb" dans la page wsgi, il ne peut toujours pas. Je peux aussi accéder par apache trac, mais il me montre Impossible de charger les liaisons Python pour MySQL
Je me réfère au journal apache:
[Sun Mar 13 13:36:44 2011] [error] [client ::1] mod_wsgi (pid=37060): Target WSGI script /Users/alex/Library/apache2/htdocs/sql.wsgi' cannot be loaded as Python module.
[Sun Mar 13 13:36:44 2011] [error] [client ::1] mod_wsgi (pid=37060): Exception occurred processing WSGI script '/Users/alex/Library/apache2/htdocs/sql.wsgi'.
[Sun Mar 13 13:36:44 2011] [error] [client ::1] Traceback (most recent call last):
[Sun Mar 13 13:36:44 2011] [error] [client ::1] File "/Users/alex/Library/apache2/htdocs/sql.wsgi", line 2, in <module>
[Sun Mar 13 13:36:44 2011] [error] [client ::1] import MySQLdb
[Sun Mar 13 13:36:44 2011] [error] [client ::1] File "build/bdist.macosx-10.6-universal/egg/MySQLdb/__init__.py", line 19, in <module>
[Sun Mar 13 13:36:44 2011] [error] [client ::1] File "build/bdist.macosx-10.6-universal/egg/_mysql.py", line 7, in <module>
[Sun Mar 13 13:36:44 2011] [error] [client ::1] File "build/bdist.macosx-10.6-universal/egg/_mysql.py", line 6, in __bootstrap__
[Sun Mar 13 13:36:44 2011] [error] [client ::1] ImportError: dlopen(/Users/alex/.python-eggs/MySQL_python-1.2.3-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so, 2): Library not loaded: libmysqlclient.16.dylib
[Sun Mar 13 13:36:44 2011] [error] [client ::1] Referenced from: /Users/alex/.python-eggs/MySQL_python-1.2.3-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so
[Sun Mar 13 13:36:44 2011] [error] [client ::1] Reason: image not found
[Sun Mar 13 13:36:57 2011] [error] [client ::1] mod_wsgi (pid=37061): Target WSGI script
Cela ressemble mod_wsgi ne peut pas trouver libmysqlclient.16.dylib. Je rencontre le même problème quand j'installe mysqldb pour python, donc j'ajouter l'exportation
DYLD_LIBRARY_PATH=/Users/alex/Library/mysql-5.x/lib
SO python -c "MySQLdb import" peut fonctionner, mais mod_wsgi ne peut pas travailler. Je mis
os.environ['DYLD_LIBRARY_PATH'] = '/Users/alex/Library/mysql-5.x/lib'
en trac.ini. Cela ne fonctionne pas pour trac dans apache encore.
Alors quelqu'un a déjà ce problème? Merci
32 bits par rapport à 64 bits? voir http://code.activestate.com/pypm/mysql-python/#notes –
il est 64 bits, je peux lancer python-mysql sans problème. Le problème est que le mod_wsgi ne peut pas fonctionner normalement. –