我已按照“Can't deploy a simple Flask application on Webfaction”中的说明设置了一个示例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()
我的httpd.conf存储在/ home // webapps / testapp / apache2 / 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正在使用,如说明中所述。
以下是我在网络派系控制面板部分中的应用程序的详细信息:
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://&lt; user&gt; .webfactional.com / testapp /
启动应用时我收到“网站未配置”消息。
有人可以说明这里可能出现的问题。这是我第一次使用Flask和webfaction.Thanks提前计算您的时间。如果您需要更多详细信息,请告诉我。
答案 0 :(得分:0)
Flask does not support Python 3 currently - 你需要切换回Python 2.7.3(或者看看CherryPy或Pyramid,因为这两个框架都支持Python 3)。