luckybooru/src/app_server.cr

27 lines
748 B
Crystal

class AppServer < Lucky::BaseAppServer
def middleware : Array(HTTP::Handler)
[
Lucky::ForceSSLHandler.new,
Lucky::HttpMethodOverrideHandler.new,
Lucky::LogHandler.new,
Lucky::SessionHandler.new,
Lucky::FlashHandler.new,
Lucky::ErrorHandler.new(action: Errors::Show),
Lucky::RouteHandler.new,
Lucky::StaticCompressionHandler.new("./public", file_ext: "gz", content_encoding: "gzip"),
Lucky::StaticFileHandler.new("./public", false),
Lucky::RouteNotFoundHandler.new,
] of HTTP::Handler
end
def protocol
"http"
end
def listen
# Learn about bind_tcp: https://tinyurl.com/bind-tcp-docs
server.bind_tcp(host, port, reuse_port: false)
server.listen
end
end