Apache2 + PHP5 + VirtualHosts no Debian e Ubuntu

Este é um tutorial de como instalar o Apache2, PHP5 (com suporte a MySQL) e configurar dois VirtualHosts. Testado no Debian Lenny E Ubuntu Karmic Koala.

[ Hits: 35.845 ]

Por: Fernando Luis Basso em 13/01/2010


Tornar seus sites visíveis na LAN



Abra o /etc/hosts e adicione:

192.168.1.5 www.estudo_1.home
192.168.1.5 www.estudo_2.home

Claro, isto supondo-se que o ip do seu PC é 192.168.1.5. Use o seu próprio ip.

Se quiser que outros PCs da LAN possam acessar seus dois sites, abra o /etc/hosts destes PCs e adicione as mesmas linhas demonstradas acima. No Windows é c:\windows\system32\drivers\etc\hosts (por que raios o \etc\hosts do Windows está em um dir chamado drivers!?).

Obs.: Para estudar PHP em casa, isto já é o suficiente, mas o correto seria configurar um servidor DNS.

Reiniciando o Apache:

# /etc/init.d/apache2 restart

No Debian, foi perfeito. No Ubuntu porém, eu recebi um erro:

[error] (EAI 2)Name or service not known: Could not resolve host name *80 -- ignoring!

Pelo que pesquisei na web, este erro é causado porque não temos um servidor DNS configurado. Mesmo assim isto não chega a ser um problema. Você vai conseguir acessar os seus dois sites normalmente a partir da LAN.

UTF-8

Ainda, para evitar problemas com acentos, edite o arquivo /etc/apache2/conf.d/charset e adicione (ou descomente):
AddDefaultCharset UTF-8

Finalizando

O básico está pronto. Agora já é possível abrir seus arquivos .php tanto do servidor quanto dos hosts da LAN. Abra um navegador e digite http://www.estudo_1.home/ na barra de endereços e você deverá ver o a página index.html que você criou anteriormente na pasta public dos sites.

Agora basta criar seus arquivos .php. Digamos que você fez o hello_world.php, basta digitar:

http://www.estudo_1.home/hello_world.php

IMPORTANTE: Não adianta querer abrir os arquivos .php direto do HD (clicando com o botão direito do mouse e escolher "abrir com firefox" (ou opera!) como fazemos com arquivos .html, não funciona! Os arquivos .php precisam ser processados no servidor. Por isso é necessário digitar a url na barra de endereços do browser.

Uma última dica: se você precisar colocar códigos php em arquivos html, eles não serão executados, obviamente. Para que o código php seja executado dentro de arquivos com extensão .html, crie um arquivo chamado .htaccess na pasta /home/www/public_html (ou em qualquer outra pasta onde houver arquivos a serem executados) e adicione:

AddType application/x-httpd-php .html

Com isto todos os seus arquivos .html serão executados como php.

Também tenho este texto no meu blog: http://jeditux.wordpress.com/2009/09/08/apache2-php5-virtualhosts-debian-ubuntu/ Desculpem qualquer erro. Funcionou pra mim, e espero que ajude alguém.

Página anterior    

Páginas do artigo
   1. A causa
   2. Tornar seus sites visíveis na LAN
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Agendando tarefas em Linux/Unix usando o cron

Boot gráfico no ArchLinux

Instalando Zabbix no Debian Lenny

O Guia do Slackware

Configuração da rede no Conectiva 10

  
Comentários
[1] Comentário enviado por nickmarinho em 15/01/2010 - 13:06h

Poderia ser mais interessante criar uma pasta "sites" dentro do seu diretorio pessoal, pois você precisa de permissão para escrever nos arquivos e diretórios e dessa forma você necessitaria de um chmod 770 ou 777 nos arquivos para poder usá-los.

Eu mesmo uso dessa forma.

Apenas uma sugestão minha.

[]s

[2] Comentário enviado por edivandoflf em 24/06/2010 - 15:30h

Muito bom, estou aprendendo php e este artigo vei bem na hora
Valeu cara.

[3] Comentário enviado por sydnei.lucchesi em 17/10/2010 - 11:49h

Caros,
Criei um servidor de arquivos e de web para desenvolvimento próprio mas estou com problema na configuração do Apache2.

Na instalação do Ubuntu 10.04 e o lamp, tudo correu perfeitamente mas enfrento o seguinte problema.

1- Configurei o apache2, instalei os módulos complementares;
2- criei o diretorio para o site: /var/www/site;
3- criei o arquivo site em /etc/apache2/sites-available;
4- configurei o endereço adequadamente;
5- reinicializei o apache2;

Só que o que eu recebo é apenas uma figura, cujo nome é site.gif.

Se na URL eu inserir o index.php ou o index.html recebo o erro 404.

Creio que esteja faltando alguma configuração básica no Apache2.

Procurei alguma diretriz em apache2.conf, mas lá não há qualquer menção a DirectoryIndex ou em qualquer outro arquivo do Apache2.

Se alguém tiver alguma idéia eu agradeço.

Em outras distros foi tudo tranquilo, mas depois que decid mudar para Ubuntu 10.04, toda atualizada, me dei mal. É só problema e olha que já refiz a instalação umas três vezes.

Grato pela atenção.

[4] Comentário enviado por ij.souza1988 em 31/03/2011 - 20:22h

Maravilha meu caro, Vou usar a experiência adquirida aqui para implementar um Intranet na empresa em que trabalho.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts