如何编写小型ruby Web服务器?

And*_*rew 4 ruby webserver

我有一个ruby脚本,还需要在目录中提供一些静态文件(例如index.html,CSS和JS目录).编写一个内联Web服务器来提供这些文件的最佳方法是什么?

解:

require 'webrick'
web_server = WEBrick::HTTPServer.new(:Port => 3000, :DocumentRoot => Dir.pwd + '/web')
trap 'INT' { web_server.shutdown }
web_server.start
Run Code Online (Sandbox Code Playgroud)

或者将其添加到您.bash_profile的文件中,以便在任何目录中提供文件:

alias serve="ruby -rwebrick -e\"s = WEBrick::HTTPServer.new(:Port => 3000, :DocumentRoot => Dir.pwd); trap('INT') { s.shutdown }; s.start\""
Run Code Online (Sandbox Code Playgroud)

Pau*_*lgo 8

您可以使用最简单的ruby HTTP服务器:

ruby -run -e httpd . -p 5000
Run Code Online (Sandbox Code Playgroud)

它将从端口5000上的运行目录提供内容.