24: def do_GET(req, res)
25: unless defined?(ERB)
26: @logger.warn "#{self.class}: ERB not defined."
27: raise HTTPStatus::Forbidden, "ERBHandler cannot work."
28: end
29: begin
30: data = open(@script_filename){|io| io.read }
31: res.body = evaluate(ERB.new(data), req, res)
32: res['content-type'] =
33: HTTPUtils::mime_type(@script_filename, @config[:MimeTypes])
34: rescue StandardError => ex
35: raise
36: rescue Exception => ex
37: @logger.error(ex)
38: raise HTTPStatus::InternalServerError, ex.message
39: end
40: end