Mercurial Hosting > luan
annotate src/luan/host/run.luan @ 1354:2449ca95dc1e
minor
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Mon, 25 Mar 2019 16:55:17 -0600 |
parents | 8d95711f6615 |
children | a3d0d1c2ce89 |
rev | line source |
---|---|
1353
8d95711f6615
replace java() with require "java"
Franklin Schmidt <fschmidt@gmail.com>
parents:
1347
diff
changeset
|
1 require "java" |
1135 | 2 local Luan = require "luan:Luan.luan" |
3 local error = Luan.error | |
4 local do_file = Luan.do_file or error() | |
1209
cff4a7d778a6
luanhost - load all sites at start
Franklin Schmidt <fschmidt@gmail.com>
parents:
1200
diff
changeset
|
5 local ipairs = Luan.ipairs or error() |
1135 | 6 local Io = require "luan:Io.luan" |
7 local Hosting = require "luan:host/Hosting.luan" | |
1181
51d1342e25ad
luanhost password handling
Franklin Schmidt <fschmidt@gmail.com>
parents:
1135
diff
changeset
|
8 local Logging = require "luan:logging/Logging.luan" |
51d1342e25ad
luanhost password handling
Franklin Schmidt <fschmidt@gmail.com>
parents:
1135
diff
changeset
|
9 local logger = Logging.logger "run" |
1185
94cf2576a922
implement WebHandler for nginx
Franklin Schmidt <fschmidt@gmail.com>
parents:
1182
diff
changeset
|
10 local WebHandler = require "java:luan.host.WebHandler" |
1182 | 11 Hosting.WebHandler = WebHandler |
1135 | 12 |
1200
1e351b0d385e
move remove_old_web_log_files to luanhost
Franklin Schmidt <fschmidt@gmail.com>
parents:
1188
diff
changeset
|
13 |
1135 | 14 local here = Io.schemes.file(".").canonical().to_string() |
15 Hosting.sites_dir = here.."/sites/" | |
1181
51d1342e25ad
luanhost password handling
Franklin Schmidt <fschmidt@gmail.com>
parents:
1135
diff
changeset
|
16 |
1135 | 17 do_file "classpath:luan/host/main.luan" |
18 | |
19 | |
20 -- web server | |
21 | |
1347
643cf1c37723
move webserver to lib and bug fixes
Franklin Schmidt <fschmidt@gmail.com>
parents:
1315
diff
changeset
|
22 local Server = require "java:luan.lib.webserver.Server" |
643cf1c37723
move webserver to lib and bug fixes
Franklin Schmidt <fschmidt@gmail.com>
parents:
1315
diff
changeset
|
23 local IndexHandler = require "java:luan.lib.webserver.handlers.IndexHandler" |
643cf1c37723
move webserver to lib and bug fixes
Franklin Schmidt <fschmidt@gmail.com>
parents:
1315
diff
changeset
|
24 local ContentTypeHandler = require "java:luan.lib.webserver.handlers.ContentTypeHandler" |
643cf1c37723
move webserver to lib and bug fixes
Franklin Schmidt <fschmidt@gmail.com>
parents:
1315
diff
changeset
|
25 local SafeHandler = require "java:luan.lib.webserver.handlers.SafeHandler" |
1135 | 26 |
1185
94cf2576a922
implement WebHandler for nginx
Franklin Schmidt <fschmidt@gmail.com>
parents:
1182
diff
changeset
|
27 local webHandler = WebHandler.new(Hosting.sites_dir) |
94cf2576a922
implement WebHandler for nginx
Franklin Schmidt <fschmidt@gmail.com>
parents:
1182
diff
changeset
|
28 local handler = webHandler |
1315 | 29 handler = IndexHandler.new(handler) |
1185
94cf2576a922
implement WebHandler for nginx
Franklin Schmidt <fschmidt@gmail.com>
parents:
1182
diff
changeset
|
30 handler = ContentTypeHandler.new(handler) |
94cf2576a922
implement WebHandler for nginx
Franklin Schmidt <fschmidt@gmail.com>
parents:
1182
diff
changeset
|
31 handler = SafeHandler.new(handler) |
94cf2576a922
implement WebHandler for nginx
Franklin Schmidt <fschmidt@gmail.com>
parents:
1182
diff
changeset
|
32 local server = Server.ForAddress.new("127.0.0.1",8080,handler) |
1135 | 33 server.start() |
1209
cff4a7d778a6
luanhost - load all sites at start
Franklin Schmidt <fschmidt@gmail.com>
parents:
1200
diff
changeset
|
34 |
cff4a7d778a6
luanhost - load all sites at start
Franklin Schmidt <fschmidt@gmail.com>
parents:
1200
diff
changeset
|
35 |
cff4a7d778a6
luanhost - load all sites at start
Franklin Schmidt <fschmidt@gmail.com>
parents:
1200
diff
changeset
|
36 local sites_dir = Io.schemes.file(Hosting.sites_dir) |
cff4a7d778a6
luanhost - load all sites at start
Franklin Schmidt <fschmidt@gmail.com>
parents:
1200
diff
changeset
|
37 for _, site_dir in ipairs(sites_dir.children()) do |
cff4a7d778a6
luanhost - load all sites at start
Franklin Schmidt <fschmidt@gmail.com>
parents:
1200
diff
changeset
|
38 local name = site_dir.name() |
cff4a7d778a6
luanhost - load all sites at start
Franklin Schmidt <fschmidt@gmail.com>
parents:
1200
diff
changeset
|
39 WebHandler.loadHandler(name) |
cff4a7d778a6
luanhost - load all sites at start
Franklin Schmidt <fschmidt@gmail.com>
parents:
1200
diff
changeset
|
40 end |