Добрый день,
Прежде всего, я очень зеленый, когда дело доходит до вещей, связанных с сервером, так что терпите меня. Я запускаю ubuntu 11.10, и я установил стек apache tomcat railo на свой сервер, используя https://github.com/talltroym/Railo-Ubuntu-Installer-Script/blob/master/setup-railo.sh
Пока все в порядке, и сервер работает отлично, однако я, кажется, не понимаю, как настроить несколько веб-сайтов. Прямо сейчас каждое соединение, кажется, идет в / var / www /.
Я пробовал добавить новый vhost в apache, который отлично работал, за исключением того факта, что он просто выводил мои файлы cfml, а не проходил через сервер railo.
Я думаю, это связано с тем, что нужно сказать, что railo должен с этим справиться, после некоторых исследований я обнаружил эту строку в файле available-sites / default-ssl:
DirectoryIndex index.cfm index.cfml default.cfm default.cfml index.htm index.html
#Proxy .cfm and cfc requests to Railo
ProxyPassMatch ^/(.+.cf[cm])(/.*)?$ http://127.0.0.1:8080/$1
ProxyPassReverse / http://127.0.0.1:8080/
после копирования этих строк в новый vhost railo, похоже, активировался правильно, но работал из / var / www, а не из каталога, который я установил в vhost.
Мой новый vhost выглядит так:
<VirtualHost *:80>
DocumentRoot "/var/www/test"
ServerName -hidden-
<Directory "/var/www/test">
allow from all
Options +Indexes
</Directory>
DirectoryIndex index.cfm index.cfml default.cfm default.cfml index.htm index.html
#Proxy .cfm and cfc requests to Railo
ProxyPassMatch ^/(.+.cf[cm])(/.*)?$ http://127.0.0.1:8080/$1
ProxyPassReverse / http://127.0.0.1:8080/
#Deny access to admin except for local clients
<Location /railo-context/admin/>
Order deny,allow
Deny from all
Allow from 172.16.0.0/16
Allow from 192.168.0.0/24
</Location>
</VirtualHost>
Я мог бы использовать несколько указателей, где мне нужно что-то изменить, чтобы это работало. Ура!
Экземпляр Tomcat, в котором работает Railo, также настроен на /var/www
; это эта строка в /opt/tomcat/conf/web.xml
:
<Context path="" docBase="/var/www"/>
Но если вы просто измените это на /var/www/test
каталог, то элементы на основном сайте перестанут работать. Вместо этого работайте со структурой каталогов, которую вы создаете, с подкаталогами для каждого сайта. Измените свои прокси-директивы в новом vhost:
ProxyPassMatch ^/(.+.cf[cm])(/.*)?$ http://127.0.0.1:8080/test/$1
ProxyPassReverse / http://127.0.0.1:8080/test/
Эта структура каталогов также означает, что кто-то может попасть на тестовый сайт через http://main-site.name/test/
, так что имейте это в виду; было бы неплохо переместить его документы в /var/www/main/
или что-то в этом роде, и соответствующим образом отрегулируйте его утверждения прокси.