基本的なWebアプリケーションを実行するために、「 Webfactionに単純なFlaskアプリケーションをデプロイできない」で説明されているようにサンプルtestappをセットアップしました。
以下はコードスニペットと構造です:
「Webファクションサーバー上」
/home/<user>/webapps
ls
>> testapp ( <-- my testapp)
cd testapp
>> apache2 htdocs
cd htdocs
>> index.py testapp.py
htdocsの下に保存されている私のindex.pyファイルは次のとおりです。
import sys
testapp = "/home/<user>/webapps/testapp/htdocs"
if not testapp in sys.path:
sys.path.insert(0, testapp)
from testapp import app as application
htdocsの下に保存されている私のtestapp.pyファイルは次のとおりです。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()
/ home // webapps / testapp / apache2 / confの下に保存されている私のhttpd.confは、次のとおりです。
ServerRoot "/home/<user>/webapps/testapp/apache2"
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule wsgi_module modules/mod_wsgi.so
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User- Agent}i\"" combined
CustomLog /home/<user>/logs/user/access_testapp.log combined
DirectoryIndex index.py
DocumentRoot /home/<user>/webapps/testapp/htdocs
ErrorLog /home/<user>/logs/user/error_testapp.log
KeepAlive Off
Listen 24329
MaxSpareThreads 3
MinSpareThreads 1
ServerLimit 1
SetEnvIf X-Forwarded-SSL on HTTPS=1
ThreadsPerChild 5
WSGIDaemonProcess testapp processes=5 python-path=/home/<user>/webapps/testapp /lib/python3.1 threads=1
WSGIProcessGroup testapp
WSGIRestrictEmbedded On
WSGILazyInitialization On
WSGIPythonPath /home/<user>/webapps/testapp/htdocs
WSGIScriptAlias / /home/<user>/webapps/testapp/htdocs/index.py
<Directory /home/<user>/webapps/testapp/htdocs>
AddHandler wsgi-script .py
ReWriteEngine on
RewriteBase /
WSGIScriptReloading On
</Directory>
私のドメインはwebfactionのプロジェクトを指しています。指示に記載されているように、デフォルトのindex.pyは、新しいもので上書きする前に機能していました。
以下は、Webファクションのコントロールパネルセクションにある私のアプリケーションの詳細です。
testapp
Name testapp
Label mod_wsgi 3.4/Python 3.2
Machine
Web377
Description
mod_wsgi 3.4/Python 3.2
Port 24329
ユーザーの下にあるerror_testapp.logを確認し、以下を参照してください。
[Mon Feb 04 07:45:05 2013] [notice] caught SIGTERM, shutting down
[Mon Feb 04 07:45:10 2013] [notice] Apache/2.2.17 (Unix) mod_wsgi/3.4 Python/3.2.3 configured -- resuming normal operations
[Mon Feb 04 07:57:14 2013] [notice] caught SIGTERM, shutting down
[Mon Feb 04 07:57:19 2013] [notice] Apache/2.2.17 (Unix) mod_wsgi/3.4 Python/3.2.3 configured -- resuming normal operations
http:// <user> .webfactional.com /testapp/からアプリを起動しようとしたとき
「サイトが構成されていません」というメッセージが表示されます。
誰かがここで何がうまくいかないのかを明らかにしてくれませんか。Flaskとwebfactionを使うのはこれが初めてです。お時間をいただきありがとうございます。詳細が必要な場合はお知らせください。