📄 webserver.rb
字号:
#!/usr/bin/ruby# iExploder - Generates bad HTML files to perform QA for web browsers.# Developed for the Mozilla Foundation.####################### Copyright (c) 2006 Thomas Stromberg <thomas%stromberg.org># # This software is provided 'as-is', without any express or implied warranty.# In no event will the authors be held liable for any damages arising from the# use of this software.# # Permission is granted to anyone to use this software for any purpose,# including commercial applications, and to alter it and redistribute it# freely, subject to the following restrictions:# # 1. The origin of this software must not be misrepresented; you must not# claim that you wrote the original software. If you use this software in a# product, an acknowledgment in the product documentation would be appreciated# but is not required.# # 2. Altered source versions must be plainly marked as such, and must not be# misrepresented as being the original software.# # 3. This notice may not be removed or altered from any source distribution.require 'webrick'require 'iexploder';require 'config';include WEBrick### THE INTERACTION ##################################$ie_preload = IExploder.new($HTML_MAX_TAGS, $HTML_MAX_ATTRS, $CSS_MAX_PROPS)$ie_preload.readTagFiles()$ie_preload.url='/iexploder.cgi'if ARGV[0] port = ARGV[0].to_ielse port = 2000endputs "* iExploder #{$VERSION} will be available at http://localhost:#{port}"puts "* Max Tags: #$HTML_MAX_TAGS Max Attrs: #$HTML_MAX_ATTRS Max Props: #$CSS_MAX_PROPS"putss = HTTPServer.new( :Port => port )class IEServlet < HTTPServlet::AbstractServlet def do_GET(req, res) ie = $ie_preload.dup ie.test_num = req.query['test'].to_i ie.subtest_num = req.query['subtest'].to_i || 0 ie.random_mode = req.query['random'] ie.lookup_mode = req.query['lookup'] ie.stop_num = req.query['stop'].to_i ie.setRandomSeed res['Content-Type'] = 'text/html' res.body = ie.buildPage() endendclass IEForm < HTTPServlet::AbstractServlet def do_GET(req, res) res['Content-Type'] = 'text/html' res.body = File.open("index.html").readlines.join("\n") endends.mount("/iexploder.cgi", IEServlet)s.mount("/", IEForm)trap("INT") { s.shutdown }s.start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -