Mongrel: как обрабатывать erb в файле .rhtml

Я пытаюсь обслуживать статический контент для веб-разработки с несколькими строками erb, чтобы имитировать то, что будет делать реальный сервер. Я уже сделал это с WEBrick здесь: http://ceronio.net/2011/06/nice-web-server-script-to-server-any-directory-using-webrick, но теперь я хочу сделать это с Mongrel.

Мой код пока такой:

#!/usr/bin/ruby
require 'rubygems'
require 'mongrel'
Mongrel::DirHandler.add_mime_type('.rhtml', 'text/html')
server = Mongrel::HttpServer.new("localhost", 2000)
server.register("/", Mongrel::DirHandler.new(Dir::pwd))
server_thread = server.run
server_thread.join

Но когда я обращаюсь к своему файлу index.rhtml, он не обрабатывает содержимое тегов ‹% %>, а просто передает файл как есть в браузер.

С WEBrick ничего дополнительно не требовалось. Что мне нужно сделать, чтобы код Ruby на стороне сервера обрабатывался в файле .rhtml?


person mydoghasworms    schedule 22.07.2011    source источник


Ответы (1)


После просмотра кода класса DirHandler в Mongrel создается впечатление, что этот класс не предназначен для применения какой-либо обработки к файлу, а просто обслуживает его как есть.

Кажется, единственный способ сделать это в Mongrel — изменить DirHandler или написать свой собственный HttpHandler.

person mydoghasworms    schedule 22.07.2011