静的ファイルの提供

Python Guestbook コード チュートリアルのこのパートでは、静的ファイルを提供する仕組みについて解説します。App Engine は、そのように設定されていない限り、アプリケーションのソース ディレクトリからファイルを直接提供することはありません。しかし、ウェブブラウザに静的ファイルを直接提供することが必要となる場合も多くあります。画像、CSS スタイルシート、JavaScript コード、動画、Flash アニメーションなどはすべて、通常はウェブ アプリケーションとともに保存され、ブラウザに直接提供されます。

このページは複数のページからなるチュートリアルの一部です。設定の手順を最初から見ていくには、ゲストブックの作成に移動してください。

静的ファイルを使用するようにアプリケーションを構成する

Guestbook アプリ用の CSS ファイルは bootstrap/css ディレクトリに入っています。アプリのウェブページのテンプレート index.html は、静的ファイル bootstrap.css および bootstrap-responsive.css を読み込むようブラウザに指示します。

<link type="text/css" rel="stylesheet" href="/bootstrap/css/bootstrap.css">
<link type="text/css" rel="stylesheet" href="/bootstrap/css/bootstrap-responsive.css">

次のように、app.yaml ファイルは静的ファイルの場所として bootstrap ディレクトリを指定します。

handlers:
- url: /favicon\.ico
  static_files: favicon.ico
  upload: favicon\.ico

- url: /bootstrap
  static_dir: bootstrap

- url: /.*
  script: guestbook.app

handlers セクションでは URL に関する 2 つのハンドラが定義されています。/bootstrap で始まる URL の要求を App Engine が受け取ると、パスの残りの部分が bootstrap ディレクトリ内のファイルにマッピングされ、該当するファイルが見つかれば、そのファイルの内容がクライアントに返されます。他のすべての URL は /.* パターンに一致し、guestbook モジュール内の app オブジェクトによって処理されます。

URL パスの複数のパターンは、app.yaml の中に出現する順序でテストされます。この場合、/bootstrap パターンが /.* パターンの前に照合され、適切なパスが識別されます。URL マッピング、および app.yaml で指定できるその他のオプションの詳細については、app.yaml リファレンスをご覧ください。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Python の App Engine スタンダード環境