Hello, World! を実行してみる。
- (google.com) Hello, World! - Google App Engine - Google Code
→ http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/helloworld.html
簡単なリクエスト ハンドラの作成
helloworld
という名前のディレクトリを作成します。アプリケーションのすべてのファイルは、このディレクトリに配置します。
どこにだろう?
とりあえずデスクトップに作ってみる。
helloworld
ディレクトリで、helloworld.py
という名前のファイルを作成し、次のようなコンテンツを入れます。print 'Content-Type: text/plain' print '' print 'Hello, world!'
helloworld.py という名前で保存してみた。
設定ファイルの作成
App Engine アプリケーションには、
app.yaml
という名前の設定ファイルがあります。このファイルで最も重要なのは、どのハンドラ スクリプトをどの URL に対して使用するかが記述されていることです。
helloworld
ディレクトリで、app.yaml
という名前のファイルを作成し、次のようなコンテンツを入れます。application: helloworld version: 1 runtime: python api_version: 1 handlers: - url: /.* script: helloworld.py
app.yaml という名前で保存してみた。
アプリケーションのテスト
ハンドラ スクリプトと設定ファイルを使用して、各 URL にハンドラをマッピングすれば、アプリケーションは完成です。App Engine SDK に含まれる Web サーバーでこれをテストすることができます。
次のコマンドで
helloworld
ディレクトリまでのパスを指定し、Web サーバーを起動します。google_appengine/dev_appserver.py helloworld/
ここで helloworld フォルダを指定するのか……それなら C:\ に移動して……
- Command Prompt
C:\helloworld>dir /b app.yaml helloworld.py C:\helloworld>
…… PATH は通っているみたいだから……
- Command Prompt
C:\helloworld>C:\helloworld>PATH PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Google\google_appengine\ C:\helloworld>dev_appserver.py .
……で、起動すると Warning とプロンプトが表示された。
- Command Prompt
Warning: You are using a Python runtime (2.7) that is more recent than the produ ction runtime environment (2.5). Your application may use features that are not available in the production environment and may not work correctly when deployed to production. INFO 2011-09-06 07:13:05,358 appengine_rpc.py:159] Server: appengine.google. com Allow dev_appserver to check for updates on startup? (Y/n):
Python が 2.5 じゃ無いから、実際の環境では使えない機能あって、正しく動作しないかもしれないということらしいけど、とりあえず [Enter] キー。
いろいろメッセージが表示されて、PIL モジュールが import できないとか出ているけど、ウェブサーバが起動できたようなので、
- Command Prompt
: : : INFO 2011-09-06 07:48:14,937 dev_appserver_multiprocess.py:637] Running appl ication helloworld on port 8080: http://localhost:8080
ウェブブラウザで http://localhost:8080/ にアクセスしてみると、 Hello, World と表示されたから、うまくいったみたい。
追加参照
app.yaml は、おもに URL に対するハンドラを記述するファイルなので細かい設定は下のページを参照
- (google.com) Python アプリケーション設定 - Google App Engine - Google Code
→ http://code.google.com/intl/ja/appengine/docs/python/config/appconfig.html