# File lib/mongrel.rb, line 549
549:     def process(request, response)
550:       req = can_serve request.params['PATH_INFO']
551:       if not req
552:         # not found, return a 404
553:         response.start(404) do |head,out|
554:           out << "File not found"
555:         end
556:       else
557:         begin
558:           if File.directory? req
559:             send_dir_listing(request.params["REQUEST_URI"],req, response)
560:           else
561:             send_file(req, response)
562:           end
563:         rescue => details
564:           response.reset
565:           response.start(403) do |head,out|
566:             out << "Error accessing file: #{details}"
567:             out << details.backtrace.join("\n")
568:           end
569:         end
570:       end
571:     end