Я искал в Интернете и читал документацию по 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).
Вам нужно явно указать Apache прослушивать эти порты с помощью Listen
директива; посмотри на Привязка к адресам и портам.