首页 > 代码库 > 一个基于webrick 的简单web服务器

一个基于webrick 的简单web服务器

使用ruby 自带的webrick 可以非常方便地实现一个web服务器。


webrick.rb 基本代码如下:

#!/usr/bin/env ruby

require ‘webrick‘

root = File.expand_path ‘html‘
server = WEBrick::HTTPServer.new :Port => 8000, :DocumentRoot => root

trap ‘INT‘ do server.shutdown end
server.start


使用命令ruby webrick.rb 即可启动一个监听在8000端口的web服务器,

根目录在当前目录的子目录html里。代码中的web根目录也可以是一个绝对路径。


在web根目录中创建一个示例html文件,立马可以看到效果。比如:

echo "hello world" > html/index.html


上面的web 服务器没有日志功能,所有日志直接打印在console


可以稍加润色一下,加上日志功能,代码如下:

#!/usr/bin/env ruby

require ‘webrick‘

#webroot
root = File.expand_path ‘html‘

#access log
logfile = File.open ‘log/webrick.log‘, ‘a+‘
access_log = [ [logfile, WEBrick::AccessLog::COMBINED_LOG_FORMAT], ]
log = WEBrick::Log.new logfile

server = WEBrick::HTTPServer.new :Port => 8001, :DocumentRoot => root, :Logger => log, :AccessLog => access_log

trap ‘INT‘ do server.shutdown end

server.start





本文出自 “专注Linux 运维” 博客,请务必保留此出处http://purplegrape.blog.51cto.com/1330104/1891413

一个基于webrick 的简单web服务器