2013-10-06 43 views
0

是否有任何方法將處理程序僅限於開發服務器(在App Engine中)?App Engine app.yaml - 僅限開發服務器的限制處理程序

我的情景:

在開發中,我有我的JSCSS分割成多個文件,並可以很容易地調試,看這樣的流動。我有一個小腳本,編譯這些資源分成2個文件(1 JS和1 CSS)並創建的index.html的副本僅包括這些2.

有原來的與不同的路徑編譯HTML和資源,我希望生產版本只包含編譯版本。有任何想法嗎?

回答

2

app.yaml中,您可以使用skip some files並阻止它們上傳,而在本地工作時仍然可以訪問它們。

現在,如果您要檢查,如果你的應用程序是在本地還是在生產服務器上運行,您應檢查SERVER_SOFTWARE變量:

import os 

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

然後,根據該模板語言使用的是你將不得不通過一個的上述或兩者,並根據它們加載縮小版本或實際來源。

+0

我發現SERVER_SOFTWARE的東西,但那不是我想要的。因爲文件不會被加載,所以skip_files會讓我在那裏一半,但我實際上喜歡yaml中的處理程序在生產模式下不同。 – Yaron

1

您可以在運行時檢查環境以確定您所處的模式。(Lipis發佈了詳細信息。)您可以使用它動態構建數組,以將請求映射到處理程序。如果您處於開發模式,請將僅開發模式條目添加到該數組。

相關問題