anúncios

domingo, 23 de setembro de 2018

Configurando Vhost do Apache no Debian

O que é Vhost?

Vhost é a capacidade de ter diversos sites ou sistemas no mesmo servidor de forma isolada.
Assim é possível ter vários domínios ou subdomínios no mesmo servidor.
O presente howto tem como objetivo explicar os procedimentos de configurar Vhost do Apache no Debian, mas também funciona em distros derivadas do Debian, como o Ubuntu por exemplo.

Configuração do Vhost

Considerando que já tenha o ambiente com Apache, PHP e os módulos PHP necessários já instalado, caso ainda não tenha, então segue o howto de configuração do ambiente PHP 7 no Linux (Debian/Ubuntu) .

Caso já tenha o ambiente PHP 7 no Debian/Ubuntu, então segue os procedimentos abaixo:
O Apache tem um arquivo de configuração de Vhost de exemplo, então pode fazer uma cópia deste arquivo para cada Vhost que for criar, depois alterar o ServerName, DocumentRoot e Directory para o Vhost correspondente.

# cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/app.conf
O nome app.conf coloca o nome que quiser, geralmente é comum colocar o nome do domínio/subdomínio do Vhost correspondente.

# vim /etc/apache2/sites-available/app.conf
Altere o arquivo para ficar como este, apenas altere o diretório de localização do seu site ou sistema.
< VirtualHost *:80 >
ServerName app.local
DocumentRoot "/var/www/html/app/public"
ErrorLog ${APACHE_LOG_DIR}/app.error.log
CustomLog ${APACHE_LOG_DIR}/app.access.log combined
< Directory "/var/www/html/app/public" >
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
< /Directory >
< /VirtualHost >
Nota: A configuração do Vhost acima é de uma aplicação web, que funciona na rede interna, para rede externa, só alterar o ServerName para o nome de domínio válido no registro.br.

Habilitar o Vhost app.conf
# a2ensite app.conf

Reload do Apache2
# systemctl reload apache2

Como neste caso o Vhost é na rede interna, então para simular o domínio é necessário adicionar no arquivo /etc/hosts o IP do servidor seguido do nome ServerName definido no arquivo Vhost.
Para que uma máquina com Windows possa acessar a aplicação com o Vhost, o arquivo hosts é C:\Windows\System32\drivers\etc\hosts
Abrir com Bloco de Notas como Administrador o arquivo hosts no caminho mencionado.
Adicionar no arquivo hosts
IPSERVIDOR    app.local 
Abre o browser e acesse http://app.local

Para criar outro Vhost, copie o arquivo do Vhost criado anteriormente e troque o ServerName, DocumentRoot e Directory para o Vhost corresponde, habilita o novo Vhost, reload no Apache e adicione no arquivo hosts.

Feito!

Nenhum comentário:

Postar um comentário