summaryrefslogtreecommitdiff
path: root/sample/webrick/httpsd.rb
diff options
context:
space:
mode:
author(no author) <(no author)@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-01-07 19:36:57 +0000
committer(no author) <(no author)@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-01-07 19:36:57 +0000
commit6467d1fd74d866e79a9af17e07295fca0a7d2453 (patch)
tree60d3c36ef82bf935da5e5becc30a9444fb3da672 /sample/webrick/httpsd.rb
parentc19b0b569274830425a2ed0b07f28da499ef5506 (diff)
This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@5406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'sample/webrick/httpsd.rb')
-rw-r--r--sample/webrick/httpsd.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/sample/webrick/httpsd.rb b/sample/webrick/httpsd.rb
new file mode 100644
index 0000000..9d82ef3
--- /dev/null
+++ b/sample/webrick/httpsd.rb
@@ -0,0 +1,33 @@
+require "webrick"
+require "webrick/https"
+
+hostname = WEBrick::Utils::getservername
+subject = [["O", "ruby-lang.org"], ["OU", "sample"], ["CN", hostname]]
+comment = "Comment for self-signed certificate"
+
+httpd = WEBrick::HTTPServer.new(
+ :DocumentRoot => File::dirname(__FILE__),
+ :Port => 10443,
+ :SSLEnable => true,
+
+ # Specify key pair and server certificate.
+ # :SSLPrivateKey => OpenSSL::PKey::RSA.new("server.key"),
+ # :SSLCertificate => OpenSSL::X509::Certificate.new("server.crt"),
+
+ # specify the following SSL options if you want to use auto
+ # generated self-signed certificate.
+ :SSLCertName => subject,
+ :SSLComment => comment,
+
+ :CGIPathEnv => ENV["PATH"] # PATH environment variable for CGI.
+)
+
+require "./hello"
+httpd.mount("/hello", HelloServlet)
+
+require "./demo-servlet"
+httpd.mount("/urlencoded", DemoServlet, "application/x-www-form-urlencoded")
+httpd.mount("/multipart", DemoServlet, "multipart/form-data")
+
+trap(:INT){ httpd.shutdown }
+httpd.start