Django Web サイトをホストするために ec2 インスタンスを実行しています。Web サイトは、mod_wsgi を使用して Apache によって提供されています。
数日前から、開発中の新しい Web プラットフォームをデプロイしようとしていますが、解決できないと思われる問題に直面しています。セキュリティ上の理由から、パスワードなどのユーザーの個人情報を保護するためにscrypt 0.4を使用しています。
開発サーバーではすべてがうまく機能しますが、ライブ サーバーにデプロイすると 500 Internal Server エラーが発生します。Apache ログには次のメッセージが表示されます
スクリプト ヘッダーの早期終了: socialmarketingplatform.wsgi、リファラー:
scrypt モジュールが使用されている行のコメントを外すと、すべて正常に動作します。また、scryptを有効にしてDjangoに付属のサーバーを実行すると、すべてがライブサーバーで機能します。したがって、エラーを生成するのは mod_wsgi、django、および scrypt の組み合わせです。
次の wsgi ファイルを使用しています。
import os
import sys
path = '/var/www/vhosts/[sub_domain]'
if path not in sys.path:
sys.path.append(path)
sys.path.append(path + '/socialmarketingplatform')
os.environ['DJANGO_SETTINGS_MODULE'] = 'socialmarketingplatform.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
そして、次の仮想ホスト構成:
<VirtualHost *:80>
#Basic setup
ServerAdmin [removed email]
ServerName luxdevelopment.net
ServerAlias [sub domain]
DocumentRoot /var/www/vhosts/[sub domain]/socialmarketingplatform/
Alias /media/admin /usr/lib/python2.6/site-packages/Django-1.3-py2.6.egg/django/contrib/admin/media
Alias /media /var/www/vhosts/[sub domain]/socialmarketingplatform/media
<Location media="">
SetHandler None
</Location>
LogLevel warn
ErrorLog /var/log/httpd/smp_error.log
CustomLog /var/log/httpd/smp_access.log combined
WSGIDaemonProcess luxdevelopment.net user=apache group=apache threads=25
WSGIProcessGroup luxdevelopment.net
WSGIScriptAlias / /var/www/cgi-bin/socialmarketingplatform.wsgi
</VirtualHost>
誰かがこの問題で私を助けてくれることを願っています。さらに質問がある場合はお知らせください。