配置对象

配置对象定义: https://pkg.go.dev/github.com/gogf/gf/v2/net/ghttp#ServerConfig

配置方法

方法列表: https://pkg.go.dev/github.com/gogf/gf/v2/net/ghttp#Server

简要说明:

  1. 可以通过SetConfigSetConfigWithMap来设置。
  2. 也可以使用Server对象的Set*/Enable*方法进行特定配置的设置。
  3. 主要注意的是,配置项在Server执行Start之后便不能再修改,防止产生并发安全问题。

SetConfigWithMap方法

我们可以使用SetConfigWithMap方法通过Key-Value键值对来设置/修改Server的特定配置,其余的配置使用默认配置即可。其中Key的名称即是ServerConfig这个struct中的属性名称,并且不区分大小写,单词间也支持使用-/_/空格符号连接,具体可参考 类型转换-Struct转换 章节。

简单示例:

s := g.Server()
s.SetConfigWithMap(g.Map{
    "Address":    ":80",
    "ServerRoot": "/var/www/MyServerRoot",
})
s.Run()

其中ServerRoot的键名也可以使用serverRoot, server-root, server_root, server root,其他配置属性以此类推。

一个比较完整的示例:

s := g.Server()
s.SetConfigWithMap(g.Map{
    "address":          ":80",
    "serverRoot":       "/var/www/Server",
    "indexFiles":       g.Slice{"index.html", "main.html"},
    "accessLogEnabled": true,
    "errorLogEnabled":  true,
    "pprofEnabled":     true,
    "logPath":          "/var/log/ServerLog",
    "sessionIdName":    "MySessionId",
    "sessionPath":      "/tmp/MySessionStoragePath",
    "sessionMaxAge":    24 * time.Hour,
    "dumpRouterMap":    false,
})
s.Run()

















Content Menu

  • No labels