summaryrefslogtreecommitdiffstats
path: root/web/server/h2o/libh2o/examples/h2o_mruby/hello.rb
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--web/server/h2o/libh2o/examples/h2o_mruby/hello.rb32
1 files changed, 32 insertions, 0 deletions
diff --git a/web/server/h2o/libh2o/examples/h2o_mruby/hello.rb b/web/server/h2o/libh2o/examples/h2o_mruby/hello.rb
new file mode 100644
index 00000000..bceb7b0c
--- /dev/null
+++ b/web/server/h2o/libh2o/examples/h2o_mruby/hello.rb
@@ -0,0 +1,32 @@
+# paths:
+# /:
+# file.dir: examples/doc_root
+# mruby.handler-file: /path/to/hello.rb
+
+class HelloApp
+ def call(env)
+ h = "hello"
+ m = "from h2o_mruby"
+
+ ua = env["HTTP_USER_AGENT"]
+ new_ua = "new-#{ua}-h2o_mruby"
+ path = env["PATH_INFO"]
+ host = env["HTTP_HOST"]
+ method = env["REQUEST_METHOD"]
+ query = env["QUERY_STRING"]
+ input = env["rack.input"] ? env["rack.input"].read : ""
+
+ msg = "#{h} #{m}. User-Agent:#{ua} New User-Agent:#{new_ua} path:#{path} host:#{host} method:#{method} query:#{query} input:#{input}"
+
+ [200,
+ {
+ "content-type" => "text/plain; charset=utf-8",
+ "user-agent" => new_ua,
+ },
+ ["#{msg}\n"]
+ ]
+
+ end
+end
+
+HelloApp.new