Beegoのパラメータ構成
パラメータ構成
beegoは現在、INI、XML、JSON、YAML形式のプロファイル解析をサポートしているが、デフォルトではINI形式解析が採用されており、ユーザーは簡単な構成で大きな柔軟性を得ることができる.デフォルト構成の解析
beegoのデフォルトでは、現在のアプリケーションのconf/appが解析されます.confファイル.
このファイルを使用すると、beegoのデフォルトパラメータを多く初期化できます.
appname = beepkg httpaddr = “127.0.0.1” httpport = 9090 runmode =”dev” autorender = false recoverpanic = false viewspath = “myview”
上記のパラメータはbeegoのデフォルトのいくつかのパラメータを置き換えますが、beegoのパラメータは主にどれらがありますか?参考までにhttps://godoc.org/github.com/astaxie/beego#pkg-constants. BConfigはbeegoのデフォルトの構成であり、beegoを直接通過することもできます.BConfig.AppName="beepkg"のように変更すると、上記の構成効果と同様に、コードに死んだだけで、プロファイルがより柔軟になります.
以下に示すデータベース情報など、アプリケーションに必要な構成情報を構成することもできます.
mysqluser = “root” mysqlpass = “rootpass” mysqlurls = “127.0.0.1” mysqldb = “beego”
設定された構成情報は、次のように取得できます.
beego.AppConfig.String(“mysqluser”) beego.AppConfig.String(“mysqlpass”) beego.AppConfig.String(“mysqlurls”) beego.AppConfig.String(“mysqldb”)
AppConfigの方法は次のとおりです.
iniタイプを使用するプロファイルでは、keyはsection::keyモードをサポートします.
Default*メソッドでデフォルト値を返すことができます.異なるレベルの構成
プロファイルにはsectionがサポートされています.異なるRunmodeの構成があり、デフォルトではrunmodeの下の構成情報を優先的に読み取ることができます.たとえば、次のプロファイルです.
appname = beepkg httpaddr = “127.0.0.1” httpport = 9090 runmode =”dev” autorender = false recoverpanic = false viewspath = “myview”
[dev] httpport = 8080 [prod] httpport = 8088 [test] httpport = 8888
上記のプロファイルは、異なるrunmodeで異なる構成を解析するものであり、例えばdevモードではhttpportが8080、prodモードでは8088、testモードでは8888である.その他のプロファイルは同じです.解析するときはrunmodeの下の構成を優先的に解析し、デフォルトの構成を解析します.
異なるモードで構成するパラメータを読み取る方法は、「モード::構成パラメータ名」、例えばbeegoである.AppConfig.String(“dev::mysqluser”).
カスタムパラメータにはbeegoを使用する必要があります.GetConfig(tpy,key string,defaultVal interface{})は、指定したrunmodeの下の構成(1.4.0以上のバージョンが必要)を取得します.typはパラメータタイプ、keyはパラメータ名、defaultValはデフォルト値です.複数のプロファイル
INIフォーマット構成はinclude方式をサポートし、複数のプロファイルを参照します.たとえば、次の2つのプロファイルの効果は同じです.
app.conf
appname = beepkg httpaddr = “127.0.0.1” httpport = 9090
include “app2.conf”
app2.conf
runmode =”dev” autorender = false recoverpanic = false viewspath = “myview”
[dev] httpport = 8080 [prod] httpport = 8088 [test] httpport = 8888
システムのデフォルトパラメータ
beegoには構成可能なパラメータがたくさんあります.それらを一つ一つ認識することで、次のbeego開発で彼らの役割を十分に発揮することができます(conf/app.confで対応する値を設定することで、大文字と小文字を区別しません):基礎配置
App構成
Web構成
リスニング構成
モニタが傍受するアドレスで、デフォルトは8088です.
beego.BConfig.Listen.AdminPort = 8088
セッション構成
session cookieはドメイン名を格納し、デフォルトは空です.
beego.BConfig.WebConfig.Session.SessionDomain="Log構成
log詳細構成については、
beegoは現在、INI、XML、JSON、YAML形式のプロファイル解析をサポートしているが、デフォルトではINI形式解析が採用されており、ユーザーは簡単な構成で大きな柔軟性を得ることができる.デフォルト構成の解析
beegoのデフォルトでは、現在のアプリケーションのconf/appが解析されます.confファイル.
このファイルを使用すると、beegoのデフォルトパラメータを多く初期化できます.
appname = beepkg httpaddr = “127.0.0.1” httpport = 9090 runmode =”dev” autorender = false recoverpanic = false viewspath = “myview”
上記のパラメータはbeegoのデフォルトのいくつかのパラメータを置き換えますが、beegoのパラメータは主にどれらがありますか?参考までにhttps://godoc.org/github.com/astaxie/beego#pkg-constants. BConfigはbeegoのデフォルトの構成であり、beegoを直接通過することもできます.BConfig.AppName="beepkg"のように変更すると、上記の構成効果と同様に、コードに死んだだけで、プロファイルがより柔軟になります.
以下に示すデータベース情報など、アプリケーションに必要な構成情報を構成することもできます.
mysqluser = “root” mysqlpass = “rootpass” mysqlurls = “127.0.0.1” mysqldb = “beego”
設定された構成情報は、次のように取得できます.
beego.AppConfig.String(“mysqluser”) beego.AppConfig.String(“mysqlpass”) beego.AppConfig.String(“mysqlurls”) beego.AppConfig.String(“mysqldb”)
AppConfigの方法は次のとおりです.
Set(key, val string) error
String(key string) string
Strings(key string) []string
Int(key string) (int, error)
Int64(key string) (int64, error)
Bool(key string) (bool, error)
Float(key string) (float64, error)
DefaultString(key string, defaultVal string) string
DefaultStrings(key string, defaultVal []string)
DefaultInt(key string, defaultVal int) int
DefaultInt64(key string, defaultVal int64) int64
DefaultBool(key string, defaultVal bool) bool
DefaultFloat(key string, defaultVal float64) float64
DIY(key string) (interface{}, error)
GetSection(section string) (map[string]string, error)
SaveConfigFile(filename string) error
iniタイプを使用するプロファイルでは、keyはsection::keyモードをサポートします.
Default*メソッドでデフォルト値を返すことができます.異なるレベルの構成
プロファイルにはsectionがサポートされています.異なるRunmodeの構成があり、デフォルトではrunmodeの下の構成情報を優先的に読み取ることができます.たとえば、次のプロファイルです.
appname = beepkg httpaddr = “127.0.0.1” httpport = 9090 runmode =”dev” autorender = false recoverpanic = false viewspath = “myview”
[dev] httpport = 8080 [prod] httpport = 8088 [test] httpport = 8888
上記のプロファイルは、異なるrunmodeで異なる構成を解析するものであり、例えばdevモードではhttpportが8080、prodモードでは8088、testモードでは8888である.その他のプロファイルは同じです.解析するときはrunmodeの下の構成を優先的に解析し、デフォルトの構成を解析します.
異なるモードで構成するパラメータを読み取る方法は、「モード::構成パラメータ名」、例えばbeegoである.AppConfig.String(“dev::mysqluser”).
カスタムパラメータにはbeegoを使用する必要があります.GetConfig(tpy,key string,defaultVal interface{})は、指定したrunmodeの下の構成(1.4.0以上のバージョンが必要)を取得します.typはパラメータタイプ、keyはパラメータ名、defaultValはデフォルト値です.複数のプロファイル
INIフォーマット構成はinclude方式をサポートし、複数のプロファイルを参照します.たとえば、次の2つのプロファイルの効果は同じです.
app.conf
appname = beepkg httpaddr = “127.0.0.1” httpport = 9090
include “app2.conf”
app2.conf
runmode =”dev” autorender = false recoverpanic = false viewspath = “myview”
[dev] httpport = 8080 [prod] httpport = 8088 [test] httpport = 8888
システムのデフォルトパラメータ
beegoには構成可能なパラメータがたくさんあります.それらを一つ一つ認識することで、次のbeego開発で彼らの役割を十分に発揮することができます(conf/app.confで対応する値を設定することで、大文字と小文字を区別しません):基礎配置
BConfig
beego , beego.BConfig .
, conf/app.conf,
beego.LoadAppConfig("ini", "conf/app2.conf")
, , key ,
App構成
AppName
, beego。 bee new 。
beego.BConfig.AppName = "beego"
RunMode
, prod, dev test. dev, , , 。
beego.BConfig.RunMode = "dev"
RouterCaseSensitive
, true,
beego.BConfig.RouterCaseSensitive = true
ServerName
beego server beego。
beego.BConfig.ServerName = "beego"
RecoverPanic
, true, , recover , 。
beego.BConfig.RecoverPanic = true
CopyRequestBody
HTTP , , true (GET or HEAD or )。
beego.BConfig.CopyRequestBody = false
EnableGzip
gzip , false gzip, gzip, gzip zlib , Accept-Encoding 。
beego.BConfig.EnableGzip = false
Gzip 、 :
, gzipCompressLevel = 9, 1~9, 1( )
, gzipMinLength = 256, , 20B(ngnix )
, includedMethods = get;post, , GET
MaxMemory
, 1 << 26(64M)。
beego.BConfig.MaxMemory = 1 << 26
EnableErrorsShow
, true。
beego.BConfig.EnableErrorsShow = true
Web構成
AutoRender
, true, API , false, 。
beego.BConfig.WebConfig.AutoRender = true
EnableDocs
, false
beego.BConfig.WebConfig.EnableDocs = true
FlashName
Flash Cookie , BEEGO_FLASH
beego.BConfig.WebConfig.FlashName = "BEEGO_FLASH"
FlashSeperator
Flash , BEEGOFLASH
beego.BConfig.WebConfig.FlashSeperator = "BEEGOFLASH"
DirectoryIndex
, , 403 。
beego.BConfig.WebConfig.DirectoryIndex = false
StaticDir
, static
:
, StaticDir = download. beego.SetStaticPath("/download","download")
, StaticDir = download:down download2:down2. beego.SetStaticPath("/download","down") beego.SetStaticPath("/download2","down2")
beego.BConfig.WebConfig.StaticDir
StaticExtensionsToGzip
gzip , .css .js
beego.BConfig.WebConfig.StaticExtensionsToGzip = []string{".css", ".js"}
config
StaticExtensionsToGzip = .css, .js
TemplateLeft
, {{。
beego.BConfig.WebConfig.TemplateLeft="{{"
TemplateRight
, }}。
beego.BConfig.WebConfig.TemplateRight="}}"
ViewsPath
, views。
beego.BConfig.WebConfig.ViewsPath="views"
EnableXSRF
XSRF, false, 。
beego.BConfig.WebConfig.EnableXSRF = false
XSRFKEY
XSRF key , beegoxsrf。 EnableXSRF=true
beego.BConfig.WebConfig.XSRFKEY = "beegoxsrf"
XSRFExpire
XSRF , 0, 。
beego.BConfig.WebConfig.XSRFExpire = 0
リスニング構成
Graceful
, false, 。
beego.BConfig.Listen.Graceful=false
ServerTimeOut
HTTP , 0, 。
beego.BConfig.Listen.ServerTimeOut=0
ListenTCP4
, “tcp4”, ”tcp”, “tcp4”, “tcp6”, “unix” or “unixpacket” 。
beego.BConfig.Listen.ListenTCP4 = "tcp4"
EnableHTTP
HTTP , true。
beego.BConfig.Listen.EnableHTTP = true
HTTPAddr
, , IP。
beego.BConfig.Listen.HTTPAddr = ""
HTTPPort
, 8080。
beego.BConfig.Listen.HTTPPort = 8080
EnableHTTPS
HTTPS, false 。 , EnableHTTPS = true, HTTPSCertFile HTTPSKeyFile
beego.BConfig.Listen.EnableHTTPS = false
HTTPSAddr
, , IP。
beego.BConfig.Listen.HTTPSAddr = ""
HTTPSPort
, 10443
beego.BConfig.Listen.HTTPSPort = 10443
HTTPSCertFile
HTTPS ,ssl , 。
beego.BConfig.Listen.HTTPSCertFile = "conf/ssl.crt"
HTTPSKeyFile
HTTPS ,SSL keyfile 。
beego.BConfig.Listen.HTTPSKeyFile = "conf/ssl.key"
EnableAdmin
, false 。
beego.BConfig.Listen.AdminEnable = false
AdminAddr
, localhost 。
beego.BConfig.Listen.AdminAddr = "localhost"
AdminPort
モニタが傍受するアドレスで、デフォルトは8088です.
beego.BConfig.Listen.AdminPort = 8088
EnableFcgi
fastcgi , false。
beego.BConfig.Listen.EnableFcgi = false
EnableStdIo
fastcgi I/O, fastcgi , false。
beego.BConfig.Listen.EnableStdIo = false
セッション構成
SessionOn
session , false。
beego.BConfig.WebConfig.Session.SessionOn = false
SessionProvider
session , memory, session 。
beego.BConfig.WebConfig.Session.SessionProvider = ""
SessionName
cookie , beegosessionID。
beego.BConfig.WebConfig.Session.SessionName = "beegosessionID"
SessionGCMaxLifetime
session , 3600 。
beego.BConfig.WebConfig.Session.SessionGCMaxLifetime = 3600
SessionProviderConfig
, , , session
SessionCookieLifeTime
session cookie , 3600 。
beego.BConfig.WebConfig.Session.SessionCookieLifeTime = 3600
SessionAutoSetCookie
SetCookie, true 。
beego.BConfig.WebConfig.Session.SessionAutoSetCookie = true
SessionDomain
session cookieはドメイン名を格納し、デフォルトは空です.
beego.BConfig.WebConfig.Session.SessionDomain="Log構成
log詳細構成については、
logs
を参照してください.AccessLogs
Log, prod , false 。, 。
beego.BConfig.Log.AccessLogs = false
FileLineNum
, true。 。
beego.BConfig.Log.FileLineNum = true
Outputs
, logs ,console file , 。
beego.BConfig.Log.Outputs = map[string]string{"console": ""}
or
beego.BConfig.Log.Outputs["console"] = ""