webサーバを書いてみた
ふと何分で書けるのかやってみたくなった。
36分だった。
http://www.ruby-lang.org/ja/man/html/TCPServer.html のコードに毛を生やしただけ。
#!/usr/bin/env ruby require "socket" gs = TCPServer.open("", 8080) addr = gs.addr addr.shift printf("server is on %s\n", addr.join(":")) while true Thread.start(gs.accept) do |s| # save to dynamic variable print(s, " is accepted\n") while line = s.gets p line break if line =~ /^\r?\n$/ end s.write(<<EOT) HTTP/1.0 200 OK Content-Type: text/html <h1>toshi.homeip.net</h1> EOT print(s, " is gone\n") s.close end end
リクエスト無視、レスポンスハードコードでwebサーバと言えるのか。
詐欺と言ってもいいだろう。