Google App Engine Blog: SDK 1.1.3 Now Available for download使い方も簡単。まず以下の様な構成のzipファイルを用意します。
Support for zipimport and a new module, zipserve, which serves static files from a zip archive. These allow you to work past the 1000-file app deployment limit.
The development console now includes a memcache viewer (you can use this by accessing http://localhost:8080/_ah/admin while your app is running on the SDK).
URLFetch now allows users to disable automatically following HTTP redirects.
We now allow composite indexes with repeated properties.
http://googleappengine.blogspot.com/2008/09/sdk-113-now-available-for-download.html
Archive: zippage.zip
Length Date Time Name
-------- ---- ---- ----
289 08/09/17 13:03 index.html
203 08/09/17 12:53 test.html
4233 08/01/30 15:55 logo.png
-------- -------
4725 3 files
そしてアプリケーションハンドラの設定を以下の様に設定します。
import wsgiref.handlers
from google.appengine.ext import webapp
from google.appengine.ext import zipserve
def main():
application = webapp.WSGIApplication(
[
('/zippage/(.*)', zipserve.make_zip_handler('zippage.zip')),
])
wsgiref.handlers.CGIHandler().run(application)
if __name__ == '__main__':
main()
もちろんハンドラを分ければ、あるURLではpythonのハンドラ、あるURLではZIP内ファイルという事も出来ます。なお、動いている物はこの辺で確認出来ます。他にも今回のバージョンアップにて開発者用コンソールにMemcache Viewerが使える様になりました。
直接値を編集する事も出来ますが、現状マルチバイト文字でエラーが出ているようです。
他、URLFetchでURLの自動フォローを出来ないようになったり等の修正も行われています。
話は変わって、tokuhiromさん作のjavascript v8エンジンで動くCGIインタフェースllv8callですが、tokuhiromさんが入れ込んでる機能をwin32に移植して行っていますがlibmemcachedのwin32版がMSVCでビルド出来なかったので、自前でmemcacehdとお喋りする様にしました。興味がある方はこの辺のソースをご覧下さい。