22
2011
Simulando Múltiplos Websites Localmente com Apache
Quem já desenvolve há algum tempo com certeza precisou trabalhar com mais de um website localmente, o que pode causar alguns problemas dependendo do tipo de projeto e das configurações do mesmo.
Geralmente quando isso acontece coloca-se cada projeto como se fosse uma pasta do localhost como http://localhost/site1 e http://localhost/site2, e quando o projeto é colocado em produção ele passa a funcionar como http://www.site1.com e http://www.site2.com, onde já presenciei e também ouço relatos que determinadas funcionalidades ou ferramentas deixam de funcionar localmente ou no ambiente de produção.
Baseado nisso resolvi repassar uma forma de simular esses websites localmente como se fossem domínios reais (vou utilizar um domínio fictício .dev nos exemplos), como http://www.site1.dev e http://www.site2.dev, que nos possibilitem trabalhar localmente como se estivesse em produção.
1. Incluir Domínios no Arquivo Hosts
Primeiro precisamos alterar o arquivo hosts do sistema e incluir cada domínio que deseja-se trabalhar localmente. O local do arquivo depende do seu ambiente de desenvolvimento:
- Windows - %SystemRoot%System32driversetc (normalmente c:windowssystem32driversetc)
- Linux – /etc/hosts
- Mac OS X - /private/etc/hosts ou /etc/hosts
Inclua os projetos, um em cada linha para melhor organização. Você pode ainda incluir aliases em uma mesma linha.
127.0.0.1 www.site1.dev site1.dev 127.0.0.1 www.site2.dev site2.dev
2. Adicionar Permissão a Pasta dos Projetos
Para que o apache possa interpretar os arquivos de uma pasta é necessário dar permissão para cada diretório, ou o diretório base dos projetos no arquivo <apache>/conf/httpd.conf. Como exemplo vou ter os projetos localizados em D:phpsite1 e D:phpsite2, pode posso dar permissão a cada diretório individualmente, ou simplesmente dar permissão a pasta base D:php.
<Directory "D:/php">
Options Indexes FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
</Directory>
3. Habilitar Domínios Virtuais no Apache
Precisamos agora habilitar que o apache trabalhe com hosts virtuais localmente, o que irá possibilitar simular um domínio local. Basta descomentar a linha a seguir no arquivo <apache>/conf/httpd.conf.
# Virtual hosts Include conf/extra/httpd-vhosts.conf
4. Configurar os Domínios Virtuais
O último passo é criar os domínios virtuais no arquivo <apache>/conf/extra/httpd-vhosts.conf. É importante observar que o primeiro domínio virtual é o padrão caso o endereço acessado localmente não seja atribuído a nenhum outro domínio virtual. O conteúdo do arquivo httpd-vhosts.conf fica semelhante ao seguinte:
NameVirtualHost *:80 # Host padrão <VirtualHost *:80> DocumentRoot "D:/php/localhost" ServerName localhost </VirtualHost> # Demais domínios virtuais <VirtualHost *:80> DocumentRoot "D:/php/site1" ServerName site1.dev ServerAlias www.site1.dev </VirtualHost> <VirtualHost *:80> DocumentRoot "D:/php/site2" ServerName site2.dev ServerAlias www.site2.dev </VirtualHost>
-
http://www.facebook.com/people/Alexandre-Américo-Fumes/1756764904 Alexandre Américo Fumes
Tags
Tópicos Recentes
- Imagens Genéricas para Layouts
- Monitore o Consumo do Plano de Dados com My Data Manager
- Simulando Múltiplos Websites Localmente com Apache
- Executando Javascript Carregado Dinamicamente por AJAX com ASP.NET MVC
- Resolvendo Problemas de Conexão GPS no Samsung Galaxy 5 com Android 2.2 (Froyo)
- YSlow para Google Chrome
- Adicionando Facilmente QR Code ao Seu Site
- Técnica Pomodoro
- Utilizando jQuery de uma CDN Pública
- Google Chrome Frame









