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

Как запустить rails и LAMP одновременно на ubuntu?

Я только что установил виртуальную машину под управлением Ubuntu Server с установленным стеком LAMP и OpenSSH.

Что теперь было бы наилучшим способом позволить этому серверу запускать и рельсы, и приложения PHP? Было бы лучше виртуализировать два сервера на машине хост-сервера? - Или они могут счастливо бегать рядом друг с другом?

Будет ли Mongrel лучшим вариантом для рельсового сервера?

Итак, сохраняя существующий стек LAMP, обслуживающий example1.com, выполните следующие действия для настройки стороны Rails на example2.com:

Запустите mongrel для прослушивания порта 8000 (или любого другого) (FWIW, мы используем Unicorn, который будет более элегантно обрабатывать рабочих).

На стороне Apache сделайте что-то вроде этой конфигурации:

<VirtualHost example2.com:80>
    ServerName example2.com

    ProxyPass / http://localhost:8000/
    ProxyPassReverse / http://localhost:8000
    ProxyPreserveHost on
</VirtualHost>

Вы должны просмотреть свои документы Apache по «обратному прокси» и директиве «ProxyPassReverse» для получения конкретных деталей и ошибок.

Итак, ваш существующий VirtualHost для example1.com будет обрабатывать материал LAMP, а VirtualHost для example2.com будет передавать запросы через прокси в ваш стек Rails. Ваш сервер Rails будет прослушивать порт 8000, который находится вне зоны доступа LAMP.

Они могут прекрасно бегать рядом друг с другом.