部署我的第一个应用引擎应用后,我在日志中收到Static file referenced by handler not found: index.html
错误。这是我的yaml文件:
application: section-14
version: v1
api_version: 1
runtime: python27
threadsafe: yes
handlers:
- url: /bower_components
static_dir: bower_components
- url: /general
static_dir: general
- url: /projects
static_dir: projects
- url: /js
static_dir: js
- url: /styles
static_dir: styles
- url: /elements
static_dir: elements
- url: /images
static_dir: images
#here's the problem
- url: /
static_files: index.html
upload: /
#------------------
- url: /elements.html
static_files: elements.html
upload: /
我可以前往任何其他目录,以及位于这些目录中的文件,没有任何问题。此外,如果您查看index
条目下方,elements.html
路线也可以使用。
我在其他项目中注意到人们正在定义/static
目录。这是一个要求吗?我的本地环境提供此应用程序没有任何问题。
答案 0 :(得分:3)
不需要命名目录static
。我这样做是因为它使布局的重要性显而易见(至少对我而言)。
以下是我的某个应用中的app.yaml
片段,其中包含静态主页和静态资源。
handlers:
- url: /style/
static_dir: static/style
- url: /js/
static_dir: static/js
- url: /favicon.ico
static_files: static/favicon.ico
upload: static/favicon.ico
mime_type: image/x-icon
- url: /.+
script: main.app
- url: /
static_files: static/index.html
upload: static/index.html
订单很重要,使用/.+
代替/.*
使用后者,/
的请求将被路由到main.app
编辑添加:拥有静态facicon.ico
的网址映射对于阻止请求路由到您的应用非常有用,因为这会导致App Engine在不需要时启动实例。