Разместите несколько приложений Rack на одном сервере с несколькими портами (используя Apache и Passenger)

Я ищу в Интернете и читаю документацию по Apache, Passenger, Rack и т. Д., Но пока не нашел решения своей проблемы.

У меня есть несколько приложений на основе Rack (ruby), расположенных в

/home/web/sites/app1
/home/web/sites/app2
/home/web/sites/app3

app1 - приложение Sintra, app2 - Padrino, app3 - Rails.

Я хотел бы запустить эти приложения под разными портами (при условии, что IP-адрес сервера равен 50.60.70.101):

50.60.70.101:4567 -> app1
50.60.70.101:3000 -> app2
50.60.70.101:80   -> app3

Как правильно настроить файл виртуального хоста Apache для достижения этой цели?

У меня есть 3 файла в /etc/apache2/sites-available/ с этим типом конфигурации (с измененными IP-адресами):

<VirtualHost *:4567>
    RackEnv         production

    DocumentRoot    /home/web/sites/app1/public
    <Directory      /home/web/sites/app1/public>
        Order   allow,deny
        Allow   from all
        Options -MultiViews
        #AllowOverride All
    </Directory>
</VirtualHost>

Но я не могу получить доступ к app1 на 50.60.70.101:4567 (app3 работает на порту 80, хотя).

1 ответ

Вам нужно явно указать Apache прослушивать эти порты с Listen директива; взгляните на привязку к адресам и портам.

Другие вопросы по тегам