所以我想讓Django第一次運行mod-wsgi。我已經按照示例中所示配置了Apache,並且我很確定我做的一切都正確。Django + mod-wsgi + psycopg2問題
我沒有設置PYTHON_EGG_CACHE
變量,所以它使用默認值:/var/www/.python-eggs
。我已經創建了這個目錄,並且爲用戶www-data
寫了這個目錄。
當我打開網站就說明從500.html
模板輸出和這裏就是我在日誌中得到:
...
File "/usr/local/.../parts/django/django/db/__init__.py", line 17, in load_backend
return import_module('.base', 'django.db.backends.%s' % backend_name)
File "/usr/local/.../parts/django/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/usr/local/.../parts/django/django/db/backends/postgresql_psycopg2/base.py", line 22, in <module>
raise ImproperlyConfigured("Error loading psycopg2 module: %s" % e)
ImproperlyConfigured: Error loading psycopg2 module: cannot import name tz
下面是我在/var/www/.python-eggs/
# ls -la /var/www/.python-eggs/
total 12
drwxr-xr-x 3 www-data www-data 4096 Jan 27 04:19 .
drwxr-xr-x 5 root root 4096 Jan 27 04:18 ..
drwxr-xr-x 3 www-data www-data 4096 Jan 27 04:19 psycopg2-2.0.13-py2.5-linux-i686.egg-tmp
# ls -la /var/www/.python-eggs/psycopg2-2.0.13-py2.5-linux-i686.egg-tmp/psycopg2/
total 368
drwxr-xr-x 2 www-data www-data 4096 Jan 27 04:19 .
drwxr-xr-x 3 www-data www-data 4096 Jan 27 04:19 ..
-rwxr-xr-x 1 www-data www-data 363318 Jan 22 03:44 _psycopg.so
在psycopg2雞蛋的唯一文件目錄是_psycopg.so
。沒有tz.py
文件,我認爲這是問題。
請指教。
P.S.,我使用buildout和djangorecipe
來部署Django。我使用buildout
用戶運行構建腳本。不知道它是否合理。
P.P.S,psycopg2
已正確安裝,因爲我可以運行syncdb
。
當您使用解釋器並執行「from psycopg2 import tz」時會發生什麼? – 2010-01-27 19:36:49
如果我從解釋器「從psycopg2導入tz」執行,一切正常。正如我所說我能夠運行syncdb,所以psycopg2正確安裝。 – 2010-01-28 04:58:45
嘗試在django.wsgi中設置os.environ ['PYTHON_EGG_CACHE'] ='/ tmp',看看它是否有所作爲。 – Bear 2010-01-29 08:28:24