App Engine app.yaml - 仅将处理程序限制为dev服务器

时间:2013-10-06 10:24:32

标签: google-app-engine app.yaml

有没有办法将处理程序限制到开发服务器(在App Engine中)?

我的情景:

在开发中,我将 js css 分成许多文件,并且很容易调试并观察这样的流程。我有一个小脚本,将这些资源编译成2个文件(1 js 和1 css )并创建index.html的副本,其中仅包含这2个。

原始与编译的HTML和资源有不同的路径,我希望生产版本只包含已编译的版本。有什么想法吗?

2 个答案:

答案 0 :(得分:2)

app.yaml你可以skip some files并阻止他们上传,而在本地工作时仍然可以访问它们。

现在,如果您想检查您的应用是在本地运行还是在生产服务器中运行,您应该检查SERVER_SOFTWARE变量:

import os

PRODUCTION = os.environ.get('SERVER_SOFTWARE', '').startswith('Google App Engine')
DEVELOPMENT = not PRODUCTION

然后,根据您使用的模板语言,您必须通过其中一个或两个,并根据它们加载缩小版本或实际来源。

答案 1 :(得分:1)

您可以在运行时检查环境以确定您所处的模式。(Lipis发布了详细信息。)您可以使用它来动态构造馈送到WSGIApplication的数组,以将请求映射到处理程序。如果您处于开发模式,请将仅限开发模式的条目添加到该阵列。