Apache - Subdomínios dinâmicos

1

Estou enfrentando um problema com a configuração do meu ambiente de desenvolvimento. Estou tentando server todos os meus projetos como subdomínios.

Aqui está a estrutura da minha rede LAN:

192.168.1.15 - PC
192.168.1.16 - Laptop
192.168.1.17 - Laptop
192.168.1.20 - Dev Server

Configurei subdomínios dinâmicos do Apache com sucesso usando o módulo mod_vhost_alias do Apache e o servidor DNS dnsmasq .

Aqui está a configuração do meu host virtual Apache:

<VirtualHost *:80>
  VirtualDocumentRoot "/var/www/html/%1/web/"

  <Directory "/var/www/html/%1/web">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

Arquivo /etc/dnsmasq.conf

listen-address=127.0.0.1
address=/.dev/127.0.0.1

Como você certamente verá, consigo acessar meus projetos localizados em /var/www/html/ dinamicamente, sem criar novo host virtual ou editando o arquivo /etc/hosts . Tudo funciona perfeitamente e realmente acelera o processo de desenvolvimento. Devo dizer que estava funcionando antes de migrar o servidor de desenvolvimento para uma máquina separada.

Qual é o problema? Como fazer funcionar esta configuração na rede local? (Eu não preciso que o servidor seja acessível pela Internet).

Eu adicionei uma entrada para os hosts do Windows file no meu PC apontando 192.168.1.20 endereço IP para dev hostname, no entanto, não tenho idéia de como fazer subdomínios funcionando.

    
por Jason 17.11.2011 / 12:24

1 resposta

2

É provavelmente mais fácil editar o arquivo de hosts em cada máquina para adicionar os subdomínios que você deseja resolver. O formato do arquivo hosts é bem simples

ip.add.re.ss    hostname.tld sub1.hostname.tld sub2.hostname.tld

ou     ip.add.re.ss hostnname.tld     ip.add.re.ss sub.hostname.tld

para que você possa ter

192.168.1.20    mydev.lan test.mydev.lan deploy.mydev.lan

ou

192.168.1.20    mydev.lan
192.168.1.20    test.mydev.lan deply.mydev.lan

A coisa a ser observada aqui é que você recebe a primeira correspondência no nome do host.

Como alternativa, você pode permitir que o dnsmasq ouça no endereço IP do servidor e defina-o como o servidor DNS para suas outras máquinas.

    
por 21.12.2013 / 16:02