2014-11-05 6 views
2

Я пытаюсь перенаправить domain.com к tomcat7, я попробовал много конфигураций и не кажется, работает ...Перенаправление апач на кот

Это мой /etc/tomcat7/server.xml конфигурации

<Connector port="8080" protocol="HTTP/1.1" 
      connectionTimeout="20000" 
      URIEncoding="UTF-8" 
      redirectPort="8443" 
      proxyName="domain.com" 
      proxyPort="80" 
      /> 

И это мой /etc/apache2/httpd.conf

LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so 
AddModule mod_proxy.c 

ProxyPass/http://domain.com:8080/ 
ProxyPassReverse/http://domain.com:8080/ 

<Location "/"> 
Order allow,deny 
Allow from all 
</Location> 

Когда я иду к domain.com я получаю это апачское по умолчанию сообщения:

It works! 
This is the default web page for this server. 
The web server software is running but no content has been added, yet. 

Когда я иду в domain.com:8080 я получаю сообщение TOMCAT:

It works ! 
If you're seeing this page via a web browser, it means you've setup Tomcat successfully.  Congratulations! 
This is the default Tomcat home page. It can be found on the local filesystem at:  /var/lib/tomcat7/webapps/ROOT/index.html 

Я загрузил несколько .WAR с TOMCAT один помощник называется App1.
Если я иду domain.com/App1 я получаю:

The requested URL /App1/ was not found on this server. 

Но если я использую domain.com:8080/App1 приложение работает правильно и показывает цикл, например.

UPDATE: пытался /etc/apache2/ports.conf с этой конфигурацией:

Listen 80 
ServerName domain.com 
DocumentRoot /var/www/domain.com/public_html 
NameVirtualHost IP 

UPDATE2: я просто уничтожил мою Debian и я просто использовал /etc/apache2/httpd.conf установить это: (только с этим файлом я достиг такой же результат, как и выше, по-прежнему необходимо использовать domain.com:8080/appname запустить приложение ...)

<VirtualHost *:8080> 
ProxyRequests off 
ProxyPreserveHost on 
ServerName domain.com 
ServerAlias *.domain.com 
ProxyPass/http://localhost:8080/ 
ProxyPassReverse/http://localhost:8080/ 
</VirtualHost> 

Как я могу это сделать, чтобы перенаправить прямо TOMCAT сообщения по умолчанию вместо апачей?
И как избавиться от этого: 8080 и сделать приложения работают на domain.com/appname

+0

Является ли 'ProxyPass' и т. Д., Определенными в' VirtualHost'? Если да, то является ли «VirtualHost» обработкой запросов на «http: // domain.com /»? Как только вы получите httpd-> Tomcat, вам не придется беспокоиться о ': 8080' (вот в чем вопрос, верно?). –

+0

@ChristopherSchultz это файл /etc/apache2/ports.conf? – Alpha2k

+0

Только вы можете сообщить мне, как настроен ваш Apache httpd. Попробуйте найти '' и посмотрите, работает ли ваш ProxyPass в пределах любого VirtualHost. –

ответ

4

После долгого времени это тха ответ:

Edit file: /etc/apache2/sites-available/default 
    ServerAdmin [email protected] 
    ServerName domain.com 

    DocumentRoot /var/www 
    ProxyPreserveHost on 
    ProxyRequests off 
    ProxyPass /phpmyadmin ! 
    ProxyPass/http://localhost:8080/ 
    ProxyPassReverse/http://localhost:8080/ 

с использованием ! для предотвращения пересылки phpadmin в

кот
Смежные вопросы