如何在Google App Engine上上传静态HTML网站?

时间:2012-06-06 17:52:18

标签: google-app-engine

有没有这方面的教程? 我的项目中有3个文件:

  • 的index.html
  • index.css
  • index.js

应该很简单,但到目前为止,我遗失在巨大的GAE文档中。

3 个答案:

答案 0 :(得分:4)

您不需要像Mark建议的那样在app.yaml中单独调出每个文件;相反,像这样的简单处理程序就足够了:

application: myapp
version: main
runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /(.*)/
  static_files: \1/index.html
  upload: .*/index.html
- url: /.*
  static_dir: static

然后将您的网站放在包含app.yaml的目录下名为“static”的目录中。

第一个处理程序确保在有人请求目录时提供index.html。第二个处理程序直接从静态目录提供所有其他URL。

答案 1 :(得分:1)

我真的不认为谷歌打算将该服务用于此目的。但是,如果你真的需要来提供一些简单的静态内容。

您可以像这样定义app.yaml文件:

application: staticapp
version: 1
runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /
  static_files: index.html
  upload: index.html

- url: /index.css
  static_files: index.css
  upload: index.css

-url: /index.js
  static_files: index.js
  upload: index.js

然后使用appcfg update .(假设您在源目录中使用Linux)

答案 2 :(得分:0)

我做了一个简单的Go应用程序,非常好。 http://yourdomain.com将提供index.html,其余页面可在http://yourdomain.com/mypage.html

访问

这是yaml:

application: myawesomeapp
version: 1
runtime: go
api_version: go1

handlers:
- url: /.*
  script: _go_app

这是go程序,它将在根级别提供所有静态文件:

package hello

import (
    "net/http"
)

func init() {
    http.HandleFunc("/", handler)
}

func handler(w http.ResponseWriter, r *http.Request) {
    http.ServeFile(w, r, "static/"+r.URL.Path)
}

然后将所有静态文件放在/ static目录中,运行goapp deploy并完成。