1
0
mirror of https://github.com/astaxie/beego.git synced 2024-06-23 03:34:12 +00:00

Merge pull request #858 from bsingr/develop

Allow to use fastcgi via standard io.
This commit is contained in:
astaxie 2014-10-20 18:30:10 +08:00
commit ec6383c07d
2 changed files with 18 additions and 7 deletions

23
app.go
View File

@ -55,15 +55,24 @@ func (app *App) Run() {
endRunning := make(chan bool, 1)
if UseFcgi {
if HttpPort == 0 {
l, err = net.Listen("unix", addr)
if UseStdIo {
err = fcgi.Serve(nil, app.Handlers) // standard I/O
if err == nil {
BeeLogger.Info("Use FCGI via standard I/O")
} else {
BeeLogger.Info("Cannot use FCGI via standard I/O", err)
}
} else {
l, err = net.Listen("tcp", addr)
if HttpPort == 0 {
l, err = net.Listen("unix", addr)
} else {
l, err = net.Listen("tcp", addr)
}
if err != nil {
BeeLogger.Critical("Listen: ", err)
}
err = fcgi.Serve(l, app.Handlers)
}
if err != nil {
BeeLogger.Critical("Listen: ", err)
}
err = fcgi.Serve(l, app.Handlers)
} else {
app.Server.Addr = addr
app.Server.Handler = app.Handlers

View File

@ -61,6 +61,7 @@ var (
SessionAutoSetCookie bool // auto setcookie
SessionDomain string // the cookie domain default is empty
UseFcgi bool
UseStdIo bool
MaxMemory int64
EnableGzip bool // flag of enable gzip
DirectoryIndex bool // flag of display directory index. default is false.
@ -241,6 +242,7 @@ func init() {
SessionAutoSetCookie = true
UseFcgi = false
UseStdIo = false
MaxMemory = 1 << 26 //64MB