【问题标题】:flask deploy with ec2 amazon and httpd使用 ec2 amazon 和 httpd 部署烧瓶
【发布时间】:2015-07-15 00:47:34
【问题描述】:

我想在亚马逊 EC2 服务器上部署我的烧瓶应用程序(在 localhost 上完美运行)

这是我的/etc/httpd/conf.d/wsgi.conf:

LoadModule wsgi_module modules/mod_wsgi.so


<VirtualHost *:80>
    ServerName ec2-52-17-211-242.eu-west-1.compute.amazonaws.com/
    ServerAdmin  webmaster@dummy-host.example.com
    WSGIScriptAlias / /opt/i01/var/www/FlaskApp/flaskapp.wsgi
    <Directory /opt/i01/var/www/FlaskApp/FlaskApp/>
        Order allow,deny
        Allow from all
    </Directory>
    Alias /static /opt/i01/var/www/FlaskApp/FlaskApp/static
    <Directory /opt/i01/var/www/FlaskApp/FlaskApp/static/>
        Order allow,deny
        Allow from all
    </Directory>
    ErrorLog logs/i01.io-error_log
    CustomLog logs/i01.io-access_log common

</VirtualHost>

flaskapp.wsgi:

import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/opt/i01/var/www/FlaskApp/")

from FlaskApp import app as application
application.secret_key = 'Add your secret key'

还有我的__init__.py:

from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
    return "Hello, I love Digital Ocean!"
if __name__ == "__main__":
    app.run()

我有一个配置问题,但我没有找到它

【问题讨论】:

  • 第一个目录块的 /opt/i01/var/www/FlaskApp/FlaskApp/ 路径出现错误。应该只是 /opt/i01/var/www/FlaskApp 因为这是 WSGI 脚本文件所在的目录。

标签: python apache amazon-ec2 flask


【解决方案1】:

您的服务器名称不应有尾部斜杠 (ServerName ec2-52-17-211-242.eu-west-1.compute.amazonaws.com/)。如果您使用的是基于名称的虚拟主机,则它不能有尾部斜杠,因为您的浏览器请求不会映射到该虚拟主机。

通常使用 mod_wsgi,您会将 python-path 设置为 virtualenv 的 site-packages 目录(如果有的话)。

(但是当您尝试访问该虚拟主机时,您需要显示任何错误日志消息 - 或者说没有任何错误日志消息 - 并指出您的浏览器得到什么响应。您应该能够使用符号链接在本地进行测试从 /opt/i01/var/www/ 到您的真实目录。我会在评论中添加它,但我没有因果关系。)

【讨论】:

  • python-path 选项仅与他们未使用的 mod_wsgi 守护程序模式相关。 python-path 选项也不是引用虚拟环境的首选方式。更多详情见blog.dscpl.com.au/2014/09/…
【解决方案2】:

谢谢你的回答,我解决了我的问题 问题只是未定义的 WSGIPythonPath

所以我刚刚添加了这一行并且它起作用了

WSGIPythonPath /opt/i01/var/www/FlaskApp/FlaskApp/venv/:/opt/i01/var/www/FlaskApp/FlaskApp/venv/lib/python2.7/site-packages

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-13
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 2019-04-24
    • 2016-03-19
    • 1970-01-01
    • 2019-02-10
    相关资源
    最近更新 更多