これは apache/mod_wsgi/virtualenv/django スタックです。virtualenv site-packages dir に virtualenv_path_extensions.pth ファイルがあります。apache confには
WSGIScriptAlias / /path/to/my.wsgi
my.wsgi は
site.addsitedir('/path/to/virtualenv/site-packages')
ここで、Python シェルを起動してサイトをインポートし、上記の行を呼び出すと、sys.path は正しく見えます: virtualenv_path_extensions.pth 内のすべてのパスが読み込まれました
ただし、Apache では、django がパス上にないと主張しているため、500 エラーが発生します。my.wsgi の addsitedir 行の後に sys.path をログに記録すると、virtualenv_path_extensions.pth の最初の行が追加されたように見えますが、残りは追加されていません!
何が原因でしょうか?