Statische Dateien bereitstellen


In diesem Teil der Anleitung zum Python-Gästebuch-Code erfahren Sie mehr über die Bereitstellung statischer Dateien. App Engine stellt Dateien nicht direkt aus dem Quellverzeichnis Ihrer Anwendung bereit, es sei denn, dies wurde so konfiguriert. Es gibt jedoch viele Fälle, in denen Sie statische Dateien direkt an den Web-Browser bereitstellen möchten. Bilder, CSS-Dateien (Cascading Style Sheets), JavaScript-Code, Filme und Flash-Animationen werden in der Regel mit einer Webanwendung gespeichert und direkt im Browser bereitgestellt.

Diese Seite ist Teil einer mehrseitigen Anleitung. Wenn Sie die Anleitung von Anfang an durchgehen und eine Anleitung zur Einrichtung erhalten möchten, rufen Sie Gästebuchanwendungen erstellen auf.

Anwendungen für die Verwendung statischer Dateien konfigurieren

Die CSS-Dateien für die Gästebuch-Anwendung befinden sich im bootstrap/css-Verzeichnis. Die Vorlage für die Webseite der Anwendung, index.html, weist den Browser an, bootstrap.css und bootstrap-responsive.css zu laden, bei denen es sich um statische Dateien handelt:

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

Die app.yaml-Datei legt das bootstrap-Verzeichnis als Speicherort für statische Dateien fest:

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

- url: /bootstrap
  static_dir: bootstrap

- url: /.*
  script: guestbook.app

Im Bereich handlers werden zwei Handler für URLs definiert. Wenn App Engine eine Anfrage für eine URL erhält, die mit /bootstrap beginnt, wird der Rest des Pfads den Dateien im Verzeichnis bootstrap zugeordnet. Wird eine entsprechende Datei gefunden, werden die Inhalte der Datei an den Client zurückgegeben. Alle anderen URLs entsprechen dem Muster /.* und werden vom app-Objekt im Modul guestbook verarbeitet.

URL-Pfadmuster werden in der Reihenfolge geprüft, in der sie in app.yaml aufgeführt werden. In diesem Fall hat für die entsprechenden Pfade die Übereinstimmung des /bootstrap-Musters Vorrang vor der Übereinstimmung des /.*-Musters. Weitere Informationen zur URL-Zuordnung und zu anderen Optionen, die Sie in app.yaml angeben können, finden Sie in der Referenzdokumentation zu app.yaml.