forked from radiospiel/pipe2me
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.ru
executable file
·72 lines (49 loc) · 1.81 KB
/
config.ru
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# -- redirect stdout via timestamp tool ---------------------------------------
# if ENV["RACK_ENV"] != "production"
# reader, writer = IO.pipe
# fork do
# Process.setpgrp
# STDIN.reopen reader
# writer.close
# exec("../../sys/bin/timestamp %X")
# end
# STDOUT.reopen writer
# STDERR.reopen writer
# reader.close
# end
# -- load app environment -----------------------------------------------------
require "#{File.dirname(__FILE__)}/config/environment"
# -- redirect stdout via timestamp tool ---------------------------------------
require "rack"
require "sinatra/base"
if Sinatra::Base.development?
use Rack::Lint
end
use Rack::Static, :urls => ["/assets"], :root => 'public'
unless Sinatra::Base.development?
use Rack::CommonLogger
end
# -- redirect on tunnel name --------------------------------------------------
require "models/tunnel/redirection"
use Tunnel::Redirection
# -- more rack stuff ----------------------------------------------------------
use Rack::ETag
use Rack::ContentLength
# -- load session_key ---------------------------------------------------------
use Rack::Session::Cookie, :secret => File.secret("#{VAR}/rack.session_key")
# -- CSRF protection ----------------------------------------------------------
require "rack/csrf"
# [todo]
# use Rack::Csrf, :raise => true
# -- method_override ----------------------------------------------------------
# simulate HTTP verbs for restful forms
# use Rack::MethodOverride
# -- load controllers ---------------------------------------------------------
require "controllers"
require "controllers/info"
require "controllers/tunnels"
# -- run app ------------------------------------------------------------------
run Rack::URLMap.new(
"/" => Controllers::Info.new,
"/tunnels" => Controllers::Tunnels.new
)