Назад | Перейти на главную страницу

Eruby или Erubis на Apache с Ruby 1.9.2

Я пытаюсь установить eruby OR erubis на моем веб-сервере Apache (2.2.3), чтобы я мог запускать встроенный код ruby ​​в файлах .rhtml -

Я плохо разбираюсь в командной строке и сценариях оболочки, я экспериментирую и пытаюсь изучить новые вещи, но я не могу, хоть убей, заставить что-нибудь работать правильно.

У меня установлен Ruby (v 1.9.2p290), я знаю, что он работает правильно, потому что могу запускать несколько простых выражений Ruby через оболочку, например:

#ruby
#puts "Hello World"
^D
Hello, World!

У меня работает Ruby Gem (v 1.8.23).

Я также смог успешно установить Rails (v 3.2.3) (через gem) и получить простое приложение rails, работающее после того, как я выполнил руководство на guides.rubyonrails.org/getting_started.html

И я не пытаюсь получить erubis (сначала), а теперь eruby работает, поэтому я могу поиграть с некоторым простым встроенным рубином (ala PHP, с которым я очень хорошо знаком) -

Я установил Erubis (через гемы), и у меня запущена версия 2.7.0. Я просмотрел весь сайт erubis в поисках более подробных инструкций, и я чувствую, что сделал все необходимое, чтобы запустить его, но он просто не анализирует выражения ruby.

Я внес изменения в документ Apache httpd.conf согласно нескольким сообщениям, которые я нашел в Google, и руководству по адресу http://www.ruby-doc.org/docs/ProgrammingRuby/html/web.html (который, как мне кажется, на самом деле ничего не сделает с эрубисом, но я все равно попробовал ...)

Я написал на SO (потому что SO всегда помогает мне относительно быстро, но у меня нет ответов по этой проблеме), и теперь я пытаюсь установить eruby. Я загрузил и распаковал tar в свой cgi-bin и запустил # ./configure.rb и получил ошибку относительно ftools - Я провел небольшое исследование и обнаружил, что ftools устарел в Ruby 1.9 и заменен на fileutils. Я попытался сделать некоторые замены и обнаружил больше ошибок.

Я зашел в тупик, я не могу найти много информации по этому поводу, но я чувствую, что мне не хватает чего-то довольно простого. Есть ли более простой способ удовлетворить мои потребности? Любая помощь или информация приветствуются!

Первое, что нужно проверить, - убедиться, что Apache отправляет файлы rhtml через процессор ruby ​​(я предполагаю, что mod_ruby). Боюсь, что документации о том, что для этого требуется mod_ruby, немного, но обычная строка SetHandler должна позаботиться об этом.

Кстати, эруби и эруби в наши дни не подходят для рубиновых вещей. Лучше сразу перейти к Sinatra или Ruby on Rails (с Unicorn или Thin), поскольку энтузиазм по поводу встроенного рубина угас еще в 2008 году.