Commit 474a16a7 authored by astaxie's avatar astaxie

beego: improve the static file server

parent 1d36b19c
...@@ -383,10 +383,6 @@ func initBeforeHttpRun() { ...@@ -383,10 +383,6 @@ func initBeforeHttpRun() {
middleware.AppName = AppName middleware.AppName = AppName
middleware.RegisterErrorHandler() middleware.RegisterErrorHandler()
for u, _ := range StaticDir {
Get(u, serverStaticRouter)
Get(u+"/*", serverStaticRouter)
}
if EnableDocs { if EnableDocs {
Get("/docs", serverDocs) Get("/docs", serverDocs)
Get("/docs/*", serverDocs) Get("/docs/*", serverDocs)
......
...@@ -32,7 +32,8 @@ import ( ...@@ -32,7 +32,8 @@ import (
const ( const (
// default filter execution points // default filter execution points
BeforeRouter = iota BeforeStatic = iota
BeforeRouter
BeforeExec BeforeExec
AfterExec AfterExec
FinishRouter FinishRouter
...@@ -577,6 +578,15 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request) ...@@ -577,6 +578,15 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request)
return false return false
} }
if do_filter(BeforeStatic) {
goto Admin
}
serverStaticRouter(context)
if w.started {
goto Admin
}
// session init // session init
if SessionOn { if SessionOn {
context.Input.CruSession = GlobalSessions.SessionStart(w, r) context.Input.CruSession = GlobalSessions.SessionStart(w, r)
......
...@@ -22,6 +22,9 @@ import ( ...@@ -22,6 +22,9 @@ import (
) )
func serverStaticRouter(ctx *context.Context) { func serverStaticRouter(ctx *context.Context) {
if ctx.Input.Method() != "GET" && ctx.Input.Method() != "HEAD" {
return
}
requestPath := path.Clean(ctx.Input.Request.URL.Path) requestPath := path.Clean(ctx.Input.Request.URL.Path)
for prefix, staticDir := range StaticDir { for prefix, staticDir := range StaticDir {
if len(prefix) == 0 { if len(prefix) == 0 {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment