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

Как я могу выполнять сценарии Ruby через Apache (не обязательно с помощью Rails)?

Я пытаюсь заставить Apache интерпретировать мои файлы Ruby, но не понимаю, как это сделать. Меня сейчас не интересуют Rails, только Ruby. То, что я нашел в Google, меня только смущает. Любой совет?

Наиболее распространенный способ запуска кода Ruby в среде веб-сервера - реализация кода в стойке. Это очень простой API, который позволяет веб-серверу взаимодействовать с вашим Ruby-приложением. Для Apache наиболее распространенным обработчиком стойки является пассажирский (также известный как mod_rails и mod_rack). Почти все текущие веб-фреймворки Ruby (например, rails, sinatra, кемпинг и т. Д.) Подключаются к веб-серверу с помощью обработчика стойки. Вы можете использовать одну из этих платформ, но вы также можете писать стоечные приложения напрямую без них. Все серверы приложений ruby ​​(дворняга, тонкий, единорог, радуга, ...) реализуют интерфейс стойки.

Другой альтернативой было бы использование (f) cgi, но я бы посоветовал вам держаться подальше от этого маршрута, поскольку интерфейс и протоколы неудобны и не предоставляют современных средств управления.

Я пытался найти просто Ответьте на этот вопрос на некоторое время и выяснили, что все, что вам нужно сделать, это поместить скрипт ruby ​​в каталог cgi-bin вашего веб-сервера и загрузить соответствующий URL-адрес. Так, например, при установке CentOS 6.2 / httpd по умолчанию я помещаю скрипт hello.rb в / var / www / cgi-bin / и затем загружаю его. http: //localhost/cgi-bin/hello.rb в моем браузере, и он выполнил скрипт и показал мне, что перешло в STDOUT (то есть из put и т. д.).

Что здесь происходит, так это то, что каждый раз при загрузке URL-адреса сценарий выполняется полностью. Это не идеально для веб-сервера большого объема или там, где скорость имеет решающее значение - поэтому что-то вроде fastCGI поддерживает выполнение сценария всегда, но вы должны написать сценарий, чтобы справиться с этим.

надеюсь, это поможет.

Вы можете выполнять скрипты Ruby с быстрым cgi. Посмотрите на проект fcgi Чтобы получить больше информации.

Пытаться модрубы.