使用虚拟环境通过mod_Wsgi运行Flask

2024-09-23 04:17:56 发布

您现在位置:Python中文网/ 问答频道 /正文

在工作服务器(apache2.2.3)上,我试图用Flask激活我的第一个Hello World。我在任何典型的推荐位置都找不到错误日志。在

我在/home/nrDee/public_html/rrfexpire制作了一个虚拟版

这是我的rrfexpire.wsgi脚本:

activate_this = 
'/home/nrDee/public_html/rrfexpire/venv/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

from rrfexpire import app as application

这是添加到Apache中的httpd.conf公司名称:

^{pr2}$

这是我的你好世界测试(rrfexpire.py)公司名称:

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def hello_world():
  return "Hello, World!"

print hello_world()

if __name__ == '__main__':
  app.run(host='0.0.0.0', port=8082, debug=True)

当我在http://departmentServer.company.com/rrfexpire/使用我的Chrome浏览器时,我希望看到结果,但是我什么也没有得到。整个nrDee目录被设置为777权限,以消除阻止其运行的权限。我试着确认Python版本(2.7.13)和mod\wsgi与命令的兼容性

#ldd venv/lib/python2.7/site-packages/mod_wsgi/server/mod_wsgi-py27.so

结果中有一行是“libpython2.7.so.1.0=>;/usr/local/bin/anaconda/lib/libpython2.7.so.1.0”,我的解释是mod_wsgi是为Python2.7正确编译的

我是新手,一直在烧瓶和mod\wsgi文档中工作,感觉很难受。
你能为下一步检查什么提供指导吗?
谢谢! -恩迪


Tags: modappflaskwsgihellohomeworldbin
1条回答
网友
1楼 · 发布于 2024-09-23 04:17:56

我有一个有效的解决方案,但它并不完美,因为除非httpd服务重新启动,否则我的URL不会更新。但至少我现在可以看到我的地狱世界了!在

我的电流rrfexpire.wsgi脚本让我感到困惑,因为它在py2.7 virtualenv中使用Python3语法:

activate_this = 
'/home/nrDee/public_html/rrfexpire/venv/bin/activate_this.py'
with open(activate_this) as file_:
    exec(file_.read(), dict(__file__=activate_this))

import sys
sys.path.insert(0, '/home/nrDee/public_html/rrfexpire')
from rrfexpire import app as application

这是我的httpd.conf在

^{pr2}$

相关问题 更多 >