Запуск .rb Ruby файла - PullRequest
       0

Запуск .rb Ruby файла

2 голосов
/ 28 января 2012

Что необходимо для запуска файла .rb в веб-браузере?

(Мой первый день в ruby)

У меня есть сервер Apache (я из PHP) с пассажирским.Терминальное доказательство:

gundars@linuxr528:~$ apache2ctl -t -D DUMP_MODULES
passenger_module (shared)

ruby ​​1.9.3p0 (2011-10-30 редакция 33570) [x86_64-linux]

Я также установил рельсы и т. Д. Попытался сделать быстрое приложение сrails и все заработало.

Теперь я хотел бы просто открыть .rb файл в браузере, и он предлагает мне сохранить его.Вот так это выглядит в моем браузере, после щелчка появляется всплывающее окно справа, где спрашивается, где его сохранить.enter image description here

Записи, относящиеся к Ruby и этому файлу:

apache2.conf:

LoadModule passenger_module /home/gundars/.rvm/gems/ruby-1.9.3-p0/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /home/gundars/.rvm/gems/ruby-1.9.3-p0/gems/passenger-3.0.11
PassengerRuby /home/gundars/.rvm/wrappers/ruby-1.9.3-p0/ruby

virtual-hosts.conf

<VirtualHost *:80>
   ServerName tictactoe.ruby.dev
   DocumentRoot "/localhost/sandbox/RUBY/tictactoe/"
   ErrorLog /var/log/rubyonrails2.log
</VirtualHost>

/ etc / hosts

127.0.0.1   tictactoe.ruby.dev

Итак, вопрос - что нужно для запуска файла .rb в веб-браузере?Я думал, что это был пассажир для ...

Ответы [ 3 ]

5 голосов
/ 26 ноября 2013

ШАГИ ДЛЯ ЗАПУСКА .RB СЦЕНАРИЙ ИЗ APACHE:

Отредактируйте файл конфигурации Apache (например, /etc/httpd/conf/httpd.conf).Обновите или создайте параметр AddHandler, включив в него «.rb», например:

AddHandler cgi-script .cgi .rb

Создайте сценарий ruby ​​(.rb).Убедитесь, что у вас есть шебанг (#!), Указывающий на вашего рубинового переводчика.Используйте команду «which», если вы не уверены, где находится ruby.

#!/bin/ruby
puts "Content-type: text/html"
puts
puts "<html>"
puts "<body>"
puts "<h3>Hello</h3>"

Установите правильное владение и выполните разрешения (x) для вашего файла .rb, чтобы apache мог его выполнить, например:

-rwxr-x--- 1 apache apache 163 Nov 26 10:55 index.rb

Это может быть все, что вам нужно сделать.Если ваш скрипт по-прежнему не выполняется, первым шагом по устранению неполадок, который я бы попробовал, является временное отключение SELinux (с помощью setenforce 0).

1 голос
/ 28 января 2012

Первый день? Попробуйте Sinatra учебник. Легко быстро что-то запустить и запустить, а затем немного сосредоточиться на изучении языка.

0 голосов
/ 28 января 2012

Ruby - это язык на стороне сервера.Вам нужно, чтобы процесс перехватил ваш запрос, направил его в правильный файл Ruby, выполнил его и отправил вывод в ваш браузер.К счастью, кто-то сделал это для вас, с Rack и Passenger .

Почему вы захотите сделать это вместо того, чтобы работать в рамках Rails, мне не понятно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...