Apache - Criando Virtual Hosts
Dica publicada em Linux / Software
Apache - Criando Virtual Hosts
Olá!
Virtual Hosts no Apache são extremamente úteis!
Deste modo, podemos aproveitar o nosso Servidor WEB para hospedar vários projetos no mesmo.
Para isso, acesse o arquivo “/etc/httpd/conf/httpd.conf”, dentro dele, coloque a porta que deseja que o Apache funcione:
Depois disso, devemos habilitar a opção 'NameVirtualHost', como na linha abaixo:
Com estas configurações, já podemos criar nosso Virtual Host:
- Explicando:
Criado o Virtual Host, podemos agora reiniciar o Apache:
# service httpd restart
Pronto! Você já pode acessar o navegador com o ServerName configurado.
P.S.: É necessário que o seu Servidor de DNS, tenha uma entrada do tipo A para o Virtual Host criado.
Exemplo: anakin A ip_do_servidor
Desta forma, o navegador pesquisará dentro do Servidor por um Virtual Host chamado: anakin
Mais dicas, tutoriais e artigos, em: markintux.net
Virtual Hosts no Apache são extremamente úteis!
Deste modo, podemos aproveitar o nosso Servidor WEB para hospedar vários projetos no mesmo.
Para isso, acesse o arquivo “/etc/httpd/conf/httpd.conf”, dentro dele, coloque a porta que deseja que o Apache funcione:
Listen 80
Depois disso, devemos habilitar a opção 'NameVirtualHost', como na linha abaixo:
NameVirtualHost *:80
Com estas configurações, já podemos criar nosso Virtual Host:
<VirtualHost *:80> ServerAdmin admin@jedi.com.br DocumentRoot /var/www/html/anakin ServerName anakin.jedi.com.br ErrorLog logs/anakin.jedi.com.br-error_log CustomLog logs/anakin.jedi.com.br-access_log common </VirtualHost>
- Explicando:
- <VirtualHost *:80> – Nosso Virtual Host irá funcionar na porta 80
- ServerAdmin admin@jedi.com.br – E-mail do nosso Virtual Host
- DocumentRoot /var/www/html/anakin – Nosso diretório que estará o projeto.
- ServerName anakin.jedi.com.br – O nome do servidor (se digitado como está no navegador, cairá diretamente no 'DocumentRoot')
- ErrorLog logs/anakin.jedi.com.br-error_log – Local que será gerado o Log de erro
- CustomLog logs/anakin.jedi.com.br-access_log common – Local que será gerado o Log de acesso
Criado o Virtual Host, podemos agora reiniciar o Apache:
# service httpd restart
Pronto! Você já pode acessar o navegador com o ServerName configurado.
P.S.: É necessário que o seu Servidor de DNS, tenha uma entrada do tipo A para o Virtual Host criado.
Exemplo: anakin A ip_do_servidor
Desta forma, o navegador pesquisará dentro do Servidor por um Virtual Host chamado: anakin
Mais dicas, tutoriais e artigos, em: markintux.net
Eu criei 2 VHosts apontando para os diretórios /var/www/projeto1 e /var/www/projeto2
se eu chamar no navegador projeto1.exemplo.br aparece o projeto 1 corretamente
se eu chamar o projeto2.exemplo.br também funciona, até ai ok.
BUT
Suponhamos que o projeto1 é mantido por um programador php mal intencionado, e esse programador resolver commitar um script que faz uma leitura do diretório /var/www/projeto2 para verificar os arquivos nele contido?
Como eu faço a segurança disso?
O mesmo ocorre quando eu habilito o php no home do usuário, por ex.
/home/projeto1/public_html ==> projetos.exemplo.br/~projeto1
/home/projeto2/public_html ==> projetos.exemplo.br/~projeto2
Um script qualquer do projeto1 consegue fazer uma varredura nos arquivos do projeto2.
Abraço