2016-04-28 4 views
8

У меня возникло множество проблем с развертыванием моего военного файла на моем VPS.Развертывание военного файла Tomcat на VPS

У меня есть java-8 и tomcat-8. Мой сервер - Apache/2.2.22 (Debian), а мой HTTP - на порту 80 и tomcat на 8080.

В настоящее время, если вы перейдете на сайт www.drew-jocham.com, вы получите пустую директорию. Однако, если вы перейдете на сайт www.drew-jocham.com:8080/resumesite, вы получите мою страницу, которая работает на tomcat.

Естественно, что я пытаюсь сделать, это пользовательский ввод www.drew-jocham.com, а не порт и т.д.

До сих пор я поставил виртуальный хост в nano /etc/apache2/sites-enabled/000-default.conf

<VirtualHost *:80> 
    ServerAdmin [email protected] 

    ServerName www.drew-jocham.com 
    ServerAlias drew-jocham.com 

    ProxyPass /resumesite http://localhost:8080/resumesite 
    ProxyPassReverse /resumesite http://localhost:8080/resumesite 
</VirtualHost> 

в моем файле server.xml в коте я создал <Host></Host>

<Host name="www.drew-jocham.com" appbase="webapps" 
     unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> 

     <Valve className="org.apache.catalina.valves.AccessLogValve" 
       directory="logs" prefix="resumesite_log." suffix=".txt" 
       pattern="common"/> 
     </Host> 

с набором выше до каждого отдельного домена только список каталогов моего VPS в. На данный момент я не знаю, что делать.

Мой вопрос:

Я хочу, чтобы пользовательский ввод www.drew-jocham.com и не www.drew-jocham.com:8080/resumesite. Я пытаюсь это сделать, но, как я уже сказал выше, каждый отдельный домен на моем VPS просто перечисляет весь каталог серверов с указанными выше настройками.

Также скоро все сайты будут военными файлами, поэтому на сервере будет несколько доменных имен. Некоторые из них будут храниться в tomcat webapps, а некоторые на моем HTTP-сервере на порту 80 напрямую.

------------------- UPDATE 1 -------------------

Я пошел до nano /etc/apache2/sites-enabled/000-default.conf добавил ниже и перезапустил мой сервер tomcat.

<VirtualHost *:80> 
    ServerAdmin [email protected] 

    ServerName www.drew-jocham.com 
    ServerAlias drew-jocham.com 

    ProxyPass/http://localhost:8080/resumesite 
    ProxyPassReverse/http://localhost:8080/resumesite 
</VirtualHost> 

Когда я иду в www.drew-jocham.com до сих пор ничего, кроме оказываемых на картинке ниже:

enter image description here

Также добавляет www.drew-jocham/resumesite для каждого домена, на мой VPS, в котором у меня есть несколько, таким образом разбивая их все.

Однако, если я все еще иду к www.drew-jocham.com:8080/resumesite, он оказывает.

+0

@SureshKoya жаль, если я не был достаточно ясен. Пожалуйста, прочитайте мой последний комментарий к моему сообщению. – Drew1208

+0

Просто пытаюсь разгадать тайну снизу вверх. Что произойдет, когда вы укажете свой браузер на http://www.drew-jocham.com:8080/resumesite? Просто ли это список содержимого каталога, как вы видите, когда пытаетесь прокси? – Code4aliving

+0

@BradBales Нет, он отображает мою страницу. – Drew1208

ответ

1

Шаг 1: - Добавьте следующую конфигурацию в сервер tomcat8.XML

<Host name="www.drew-jocham.com" appBase="webapps" 
     unpackWARs="true" autoDeploy="true"> 

    <Alias>www.drew-jocham.com</Alias> 
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" 
      prefix="$logprefix$." suffix=".txt" 
      pattern="%h %l %u %t &quot;%r&quot; %s %b" /> 

    <Context path="" docBase="$RESUMESITEFOLDER$"> 
    <WatchedResource>WEB-INF/web.xml</WatchedResource> 
    </Context> 

    </Host> 

В апачу создать сайт с последующим

<VirtualHost www.drew-jocham.com> 
     ProxyPreserveHost On 
     ServerName www.drew-jocham.com 
     ServerAlias www.drew-jocham.com 
     Proxy Pass/http://localhost:8080/ 
     ProxyPassReverse/http://localhost:8080/ 
    </VirtualHost> 

Это выше конф работал мой https://smartvocab.in

0

Вам нужно несколько вариантов в вашем апач включены, такие как vhost_alias, proxy_ajp и mod_jk Я думаю. Также ваш tomcat нуждается в ajp. Добавьте это в апача конфигурации:

ServerName "yourdomain.com:80" 
ServerAlias "www.yourdomain.com" 
ServerAlias "ipv4.yourdomain.com" 
UseCanonicalName Off 

<IfModule mod_jk.c> 
    JkMount /yourapp ajp13 
    JkMount /yourapp/* ajp13 
    JkMount/ajp13 
    JkMount /* ajp13 
</IfModule> 
Смежные вопросы