이것은 오래된 것이지만 Google의 첫 번째 페이지에서 여기에 도달 했으므로 답변을받을 자격이 있습니다.
가장 좋은 방법은 httpd에 "VirtualHost"를 추가하고 각 하위 도메인에 대해 tomcat의 server.xml에 "Host"를 추가하는 것입니다. Tomcat의 server.xml에,
<VirtualHost *:80>
ServerName abc.com
ServerAlias www.abc.com sd1.abc.com
...
ProxyPreserveHost true
ProxyPass/ajp://localhost:8009/
ProxyPassReverse/ajp://localhost:8009/
...
</VirtualHost>
을 : 그리고는 "HelloMultiWorld"예를 들어이 걸릴
<Engine defaultHost="localhost" ...>
...
<Host name="localhost" appBase="webapps" ...>...</Host>
<Host name="sd1.abc.com" appBase="webapps-sd1"...>...</Host>
</Engine>
를 분명히, 당신은 자신과 함께 "웹 어플리케이션"와 "웹 어플리케이션-SD1"폴더를 필요 ROOT.war.
이 구성에서 HTTPd는 모든 abc.com, www.abc.com 및 sd1.abc.com 요청을 Tomcat에 프록시합니다 (AJP 사용 - HTTP/8080 사용 가능). Tomcat은 "Host : xxx.abc.com"HTTP 헤더 ("ProxyPreserveHost"로 인해)와 함께 요청을 수신합니다. server.xml에 여러 "Host"가 있으면 "Host"헤더에 따라 요청을 라우팅합니다. 알 수없는 호스트는 모두 'defaultHost'로 라우팅됩니다.
는 동일한 실제 컴퓨터에 tomcat 및 apache입니까? 바람둥이와 아파치는 같은 과정인가 아니면 두 가지 다른 과정인가? – Erik
안녕하세요, Erik, tomcat 및 apache는 동일한 물리적 시스템에 있으며 서로 다른 두 프로세스가 있습니다. –
어떻게 현재 리디렉션합니까? .htaccess 사용? 이 코드 줄을 제공 할 수 있습니까? – JochenJung