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

Виртуальные хосты на основе имен Apache - настройка файла httpd.conf

Я запускаю веб-приложение на Tomcat в следующем месте на моем сервере.

/ var / tomcat / webapps / SoccerApp

Я хочу обновить файл Tomcat httpd.conf следующим виртуальным хостом ...

<VirtualHost *:80>
DocumentRoot /var/tomcat/webapps/SoccerApp/MyTeam
ServerName www.mysoccerapp.com
</VirtualHost> 

Это дает мне ошибку 404, поскольку каталог MyTeam не существует. Однако мое приложение ведет себя таким образом, что оно использует этот URL-каталог в качестве имени футбольной команды, для которой отображаются данные, поэтому оно никогда не будет физической папкой на сервере. Тем не менее, я бы хотел, чтобы www.mysoccerapp.com преобразовался в webapps / SoccerApp / MyTeam, даже если каталога там нет.

Есть ли в этом смысл? Любые идеи о том, как заставить это работать. В конце концов, я хочу сделать следующее ...

www.teamone.com -> runs /webapps/SoccerApp/TeamOne
www.teamone.com -> runs /webapps/SoccerApp/TeamTwo

... где TeamOne и TeamTwo не являются физическими каталогами, а просто обрабатываются моим приложением SoccerApp как текущая футбольная команда, для которой отображаются данные.

Огромное спасибо!

Дэйв.

Вам нужно использовать mod_proxy для настройки обратного прокси. Затем вы можете указать два URL-адреса веб-приложениям, которые обрабатывают сайты.

Документация Apache довольно хорошо объясняет, но вот соответствующая часть с одного из наших сайтов:

 ProxyRequests off
        <Location /app>
                ProxyPass https://www.ourwebsite.com/
                ProxyHTMLURLMap https://www.ourwebsite.com /app
                ProxyPassReverse https://www.ourwebsite.com/
                SetOutputFilter  proxy-html
                ProxyHTMLURLMap  /      /app/
                ProxyHTMLURLMap  /app  /app
                RequestHeader    unset  Accept-Encoding
        </Location>