Я использую Windows XP и использую Python во время выполнения с http://www.python.org/ftp/python/2.7/python-2.7.msi
Если я работаю в автономном приложении, import psycopg2
не вызывает у меня никаких проблем.Однако, когда я приду к mod_wsgi + apache, я получу следующую ошибку
[Thu Nov 18 14:26:51 2010] [error] [client 127.0.0.1] mod_wsgi (pid=2832): Target WSGI script 'C:/Projects/SandBox/web/script/index.py' cannot be loaded as Python module.
[Thu Nov 18 14:26:51 2010] [error] [client 127.0.0.1] mod_wsgi (pid=2832): Exception occurred processing WSGI script 'C:/Projects/SandBox/web/script/index.py'.
[Thu Nov 18 14:26:51 2010] [error] [client 127.0.0.1] Traceback (most recent call last):
[Thu Nov 18 14:26:51 2010] [error] [client 127.0.0.1] File "C:/Projects/SandBox/web/script/index.py", line 9, in <module>
[Thu Nov 18 14:26:51 2010] [error] [client 127.0.0.1] import psycopg2
[Thu Nov 18 14:26:51 2010] [error] [client 127.0.0.1] File "build\\bdist.win32\\egg\\psycopg2\\__init__.py", line 65, in <module>
[Thu Nov 18 14:26:51 2010] [error] [client 127.0.0.1] from psycopg2 import tz
[Thu Nov 18 14:26:51 2010] [error] [client 127.0.0.1] ImportError: cannot import name tz
Вот сценарий Python.
import sys, os
sys.path.append(os.path.dirname(__file__))
import psycopg2
def application(environ, start_response):
status = '200 OK'
output = 'Hello World!'
response_headers = [('Content-type', 'text/plain'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)
return [output]
, а вот файл httpd.conf.
LoadModule wsgi_module modules/mod_wsgi-win32-ap22py27-3.3.so
WSGIScriptAlias / "C:/Projects/SandBox/web/"
<Directory "C:/Projects/SandBox/web">
AllowOverride None
Options None
Order deny,allow
Allow from all
</Directory>
Проверяю архив C:\Python27\Lib\site-packages\psycopg2-2.2.2-py2.7-win32.egg\
, там C:\Python27\Lib\site-packages\psycopg2-2.2.2-py2.7-win32.egg\psycopg2\tz.py