传送静态文件


Python 留言板代码演示的这一部分介绍了如何提供静态文件。未进行相关配置之前,App Engine 不会直接在您应用的源目录之外提供文件。但在许多情况下,您需要将静态文件直接提供给网络浏览器。图片、CSS 样式表、JavaScript 代码、影片和 Flash 动画通常都通过 Web 应用存储,并直接提供给浏览器。

本页面是多页教程中的一页。如需从头开始并查看设置说明,请转到创建留言板

配置应用以使用静态文件

留言板应用的 CSS 文件位于 bootstrap/css 目录中。 应用网页的模板 index.html 指示浏览器加载静态文件 bootstrap.cssbootstrap-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 部分针对网址定义了两个处理程序。当 App Engine 收到以 /bootstrap 开头的网址的请求时,会将路径的其余部分映射到 bootstrap 目录中的文件,如果找到相应的文件,则会将该文件的内容返回给客户端。所有其他网址都与 /.* 格式匹配,并由 guestbook 模块中的 app 对象处理。

网址路径格式将按照其在 app.yaml 中的顺序进行测试。在这种情况下,/bootstrap 格式将先于 /.* 格式与相应路径进行匹配。如需详细了解网址映射和可在 app.yaml 中指定的其他选项,请参阅 app.yaml 参考文档