有这方面的教程吗?我的项目中有 3 个文件:
- 索引.html
- 索引.css
- index.js
应该很简单,但到目前为止,我迷失在庞大的 GAE 文档中。
您不需要像 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
.
第一个处理程序确保在index.html
有人请求目录时提供服务。第二个处理程序直接从静态目录提供所有其他 URL。
我真的不认为这就是谷歌打算使用该服务的目的。但是如果你真的需要提供一些简单的静态内容。
您定义一个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)
我制作了一个简单的 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 即可。