Solucionado (ver solução)
Solucionado
(ver solução)
10
respostas

XAMPP + Tomcat

Bom dia senhores,

No meu cloud estou fazendo a instalação do XAMPP porém deu conflito que o tomcat que eu existia na porta 80, como consigo deixar os dois servidores funcionando ?

Abraçoos.

10 respostas

Matheus,

Voce so pode ser um servidor rodando na porta 80. Geralmente o que o pessoal faz nesses casos é deixar o Apache na porta 80 e o Tomcat em outra porta (8080 por exemplo).

E o Apache fica na frente despachando as requisições pro Tomcat quando bater certa URL por exemplo.

Pra isso vc vai precisar do mod_jk. Na documentacao do Tomcat explica como usa-lo:

http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html

Beleza Sergio, vou dar uma pesquisada sobre o assunto, realmente preciso que os dois estejam online.

Aproveitando, o XAMPP não seria mais para iniciante ou desenvolvimento ? acredito que talvez instalar o PHP e Apache separadamente seria melhor, pois ja possua uma instalação do MySQL, mas quando acesso o phpmyadmin é como se fosse outro MySQL.

Abraçooos.

Realmente nao é comum instalar o XAMPP em producao. E se ja tem o MySQL la no seu server, melhor nao instalar outro nao com o XAMPP.

Maravilha, vou instalar o PHP e Apache manual pelo apt então.

E sobre o mod_jk, assim que eu conseguir configurar ja marco o tópico como solucionado.

Obrigado.

solução!

Após ler bastante as documentações, consegui fazer o tomcat rodar na porta 80 do apache, segue os links que tive ajuda:

https://felipebbarbosa.wordpress.com/2012/10/15/configurando-apache2-e-tomcat-com-mod_jk-no-linux/

http://tomcat.apache.org/tomcat-3.3-doc/mod_jk-howto.html

http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html

Agora só uma outra duvida Sérgio, como ficará a questão de domínios que eu tinha registrado dentro do server.xml ?

Obs: Um detalhe importante pra quem tiver a mesma necessidade é que agora os .wars devem ficar dentro de /var/www

Boa!

A ideia agora é que vc configura os hostnames no Apache, nao no Tomcat mais. Ele que vai responder direto a porta 80 ai despacha pro Tomcat que nem precisa saber dos hostnames.

Maravilha, vou pesquisar sobre o assunto.

Sérgio, criei os dominios porém ele esta toda hora caindo na raiz do /var/www

Segue arquivo referente ao dominio "nevesfilmes.com.br", o mesmo deve acessar a pasta "nevesfilmes" dentro de /var/www

<VirtualHost *:80>
    # The ServerName directive sets the request scheme, hostname and port that
    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request's Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.
    #ServerName www.example.com

    ServerAdmin admin@nevesfilmes.com.br
    ServerName nevesfilmes.com.br
    ServerAlias www.nevesfilmes.com.br
    DocumentRoot /var/www

    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined

    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with "a2disconf".
    #Include conf-available/serve-cgi-bin.conf

    # Aqui você adiciona os PATH que deseja
    JkMount /nevesfilmes ajp13_worker
    JkMount /nevesfilmes/* ajp13_worker
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

Se eu acesso nevesfilmes.com.br/nevesfilmes, ai da certo e o site abre.

Entao, nao manjo muito de Apache (uso nginx no dia a dia).

Mas olhando aqui ele ta montando o path /nevesfilmes no mod_jk, certo? Sera que nao devia ser o / direto?

Ja fiz / direto e não deu certo.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software