comparison src/luan/modules/http/Server.luan @ 1607:fa066aaa068c

nginx caching
author Franklin Schmidt <fschmidt@gmail.com>
date Fri, 30 Apr 2021 20:23:28 -0600
parents ef9d96aeb541
children 46cf5137cb6b
comparison
equal deleted inserted replaced
1606:7c7f28c724e8 1607:fa066aaa068c
20 local IndexHandler = require "java:goodjava.webserver.handlers.IndexHandler" 20 local IndexHandler = require "java:goodjava.webserver.handlers.IndexHandler"
21 local ContentTypeHandler = require "java:goodjava.webserver.handlers.ContentTypeHandler" 21 local ContentTypeHandler = require "java:goodjava.webserver.handlers.ContentTypeHandler"
22 local SafeHandler = require "java:goodjava.webserver.handlers.SafeHandler" 22 local SafeHandler = require "java:goodjava.webserver.handlers.SafeHandler"
23 local LogHandler = require "java:goodjava.webserver.handlers.LogHandler" 23 local LogHandler = require "java:goodjava.webserver.handlers.LogHandler"
24 local ListHandler = require "java:goodjava.webserver.handlers.ListHandler" 24 local ListHandler = require "java:goodjava.webserver.handlers.ListHandler"
25 local HeadersHandler = require "java:goodjava.webserver.handlers.HeadersHandler"
25 local LuanHandler = require "java:luan.modules.http.LuanHandler" 26 local LuanHandler = require "java:luan.modules.http.LuanHandler"
26 local System = require "java:java.lang.System" 27 local System = require "java:java.lang.System"
27 local NotFound = require "java:luan.modules.http.NotFound" 28 local NotFound = require "java:luan.modules.http.NotFound"
28 29
29 30
65 Server.init_dir(dir) 66 Server.init_dir(dir)
66 local dir_path = match(Http.dir,"^file:(.*)$") or error "server dir must be scheme 'file:'" 67 local dir_path = match(Http.dir,"^file:(.*)$") or error "server dir must be scheme 'file:'"
67 local file_handler = FileHandler.new(dir_path) 68 local file_handler = FileHandler.new(dir_path)
68 local luan_handler = LuanHandler.new() 69 local luan_handler = LuanHandler.new()
69 local handler = ListHandler.new( luan_handler, file_handler ) 70 local handler = ListHandler.new( luan_handler, file_handler )
71 handler = ContentTypeHandler.new(handler)
70 handler = IndexHandler.new(handler) 72 handler = IndexHandler.new(handler)
71 local dir_handler = DirHandler.new(file_handler) 73 local dir_handler = DirHandler.new(file_handler)
72 local not_found_hander = NotFound.new(luan_handler) 74 local not_found_hander = NotFound.new(luan_handler)
75 not_found_hander = ContentTypeHandler.new(not_found_hander)
73 handler = ListHandler.new( handler, dir_handler, not_found_hander ) 76 handler = ListHandler.new( handler, dir_handler, not_found_hander )
74 handler = ContentTypeHandler.new(handler) 77 handler = HeadersHandler.new(handler)
75 handler = SafeHandler.new(handler) 78 handler = SafeHandler.new(handler)
76 handler = LogHandler.new(handler) 79 handler = LogHandler.new(handler)
77 local server = JavaServer.new(port,handler) 80 local server = JavaServer.new(port,handler)
78 Server.start(server) 81 Server.start(server)
79 return server, luan_handler 82 return server, luan_handler