小编Geo*_*ams的帖子

为什么Flask无法从Apache(mod_wsgi)看我的环境变量?

我想通过Apache + mod_wsgi传递环境变量,以告诉我的应用程序是在开发环境还是生产环境中运行。(这需要在启动应用程序时发生,然后再发出任何请求。)例如:

<VirtualHost *:80>
    ...
    SetEnv ENVTYPE production
    WSGIScriptAlias /myapp  /apps/www/80/wsgi-scripts/myapp/run.py
</VirtualHost>
<VirtualHost *:8080>
    ...
    SetEnv ENVTYPE development
    WSGIScriptAlias /myapp  /apps/www/80/wsgi-scripts/myapp/run.py
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

基于对“ Apache SetEnv无法按预期与mod_wsgi一起工作 ”的答案,我已经进行了设置run.py,主要__init__.py是这样的:

旧的run.py:

from myapp import app as application

if __name__ == '__main__':
    application.run(debug=True, threaded=True)
Run Code Online (Sandbox Code Playgroud)

新的run.py:

import os
from myapp import app as _application

def application(environ, start_response):
    os.environ['ENVTYPE'] = environ['ENVTYPE']
    return _application(environ, start_response)

if __name__ == '__main__':
    _application.run(debug=True, threaded=True)
Run Code Online (Sandbox Code Playgroud)

__init__.py

app = Flask(__name__)
app.config.from_object(__name__)
if os.environ.get('ENVTYPE') == 'production'
    # Setup DB …
Run Code Online (Sandbox Code Playgroud)

python apache mod-wsgi environment-variables flask

5
推荐指数
1
解决办法
4246
查看次数

在Windows上没有Python 3.5的cx_Oracle吗?

我一直在想我肯定会遗漏一些东西.cx_Oracle似乎是Python的主要Oracle DBAPI,并且可能仍在积极开发中.然而,在https://pypi.python.org/pypi/cx_Oracle/5.2上没有Python 3.5(Windows)的下载- 仅适用于Python 2.7和3.4的版本.非官方的Windows Python二进制文件页面(http://www.lfd.uci.edu/~gohlke/pythonlibs/)甚至没有cx_Oracle的部分.

我错过了一些明显的东西吗 Python 3.5已经推出了几个月.Windows上的Python 3.5真的没有二进制版本的cx_Oracle吗?

python windows cx-oracle pip python-3.5

1
推荐指数
1
解决办法
3802
查看次数