2017-03-22 9 views
0

私は/etc/apache2/sites-available/SpinnerApp.confフラスコApacheのmod_wsgiをエンドレスページの読み込み

<VirtualHost *:80> 
      ServerName 95.xxx.xxx.xx 
      ServerAlias domain.ru 

      WSGIScriptAlias//var/www/SpinnerApp/spinnerapp.wsgi 
      WSGIDaemonProcess SpinnerApp user=www-data group=www-data threads=5 

      <Directory /var/www/SpinnerApp/SpinnerApp/> 
        WSGIProcessGroup SpinnerApp 
        WSGIApplicationGroup %{GLOBAL} 
        WSGIScriptReloading On 
        Order allow,deny 
        Allow from all 
      </Directory> 

      ErrorLog ${APACHE_LOG_DIR}/error.log 
      CustomLog ${APACHE_LOG_DIR}/access.log combined 

そして/var/www/SpinnerApp/spinnerapp.wsgi

#!/usr/bin/python 
import os, sys, logging 
logging.basicConfig(stream=sys.stderr) 

activate_this = os.path.join('/var/www/SpinnerApp/SpinnerApp/spinnerenv', 'bin', 'activate_this.py') 
execfile(activate_this, dict(__file__=activate_this)) 

sys.path.insert(0,'/var/www/SpinnerApp') 

from SpinnerApp import app as application 
を持っています

しかし、ブラウザのページにipを入力すると、loadindは終了しません。 Apacheログにエラーはありません。

してください、これは間違っている

答えて

0

を助ける:

<Directory /var/www/SpinnerApp/SpinnerApp/> 

それはする必要があります:それはすべてで働いていた

<Directory /var/www/SpinnerApp> 

はあなたの全体的なApacheの設定は、アクセスとしてアップマックすることができる示唆することコントロールは、その場所のWSGIスクリプトを間違って使用することを許可してはいけません。

この間違いの他の意味は、コードが埋め込みモードで実行されていたことです。これは推奨されていません。つまり、作成されたデーモンプロセスグループを使用していませんでした。また、WSGIApplicationGroup指示が暗示されていませんでした。この特定の理由の1つは、おそらくあなたがしている問題を見るためです。つまり、Pythonのサブインタープリタでは正しく動作しないサードパーティのPythonモジュールを使用しています。その指令は、サブインタープリタの使用を避けます。

また、ServerNameディレクティブ値は、IPアドレスではなくホスト名である必要があります。 ServerAliasに使用している値に設定してから、ServerAliasという指令行を削除してください。

関連する問題