O subdomínio de instalação do Apache 2 usando o VirtualHost só funciona localmente

0

Estou ciente de que já existem perguntas como essa, mas elas não ajudaram.

Estou executando o apache2 no debian 7 e posso acessar meu site localmente através de 192.168.1.x e outros podem acessá-lo pelo meu endereço IP. Agora, o que eu quero fazer é adicionar um nome de subdomínio, para que eles possam acessar uma determinada pasta como esta: subdomain.myip . Aqui está o que eu tenho atualmente:

<VirtualHost *:80>
        ServerName username.localhost
        ServerAdmin username@localhost

        DocumentRoot /home/username/www/
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /home/username/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/localhost.error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/localhost.access.log combined
</VirtualHost>

A única maneira de acessá-lo no momento é acessando username.localhost no próprio debian. Como posso fazer isso para que eu possa acessá-lo localmente usando username.192.168.1.x e outros por username.myip ?

    
por user368278 14.09.2014 / 14:04

1 resposta

0

Primeiro, mude username.localhost em ServerName para outra coisa. Localhost é um nome padrão para o endereço IP 127.0.0.1, que significa este PC . Então, se alguém tentar usar username.localhost para acessar seu site, ele tentará pesquisá-lo em seu próprio computador, em vez do seu. Na verdade, essa definição entre localhost e 127.0.0.1 está escrita no arquivo hosts . Segunda coisa - você não pode misturar o endereço IP e o nome do domínio juntos, como username.192.168.1.x . Você precisa usar o nome de domínio (como username.example.net) ou apenas ip (192.168.1.x).

Se você quiser ficar com o nome de domínio, então você precisa de um servidor de nomes de domínio ou de um arquivo mencionado acima para hosts em todos os PCs que acessam o site, adicione esta string:

192.168.1.x    username.example.net

Depois disso, use username.example.net para acessar seu site.

PS: Não se esqueça de verificar se o firewall no seu servidor não está bloqueando a porta TCP tcp

    
por 14.09.2014 / 15:18