Você tem 2 soluções
1. Criando um host virtual para cada site
Na minha opinião, eu recomendaria essa solução se fosse uma possibilidade.
Nesta etapa, você precisaria criar um site exatamente como fez para os anteriores. Mas você precisará dar a eles um domínio como www.site3.temp
, mesmo que não tenha um registro de DNS. (observe o .tmp
TLD)
Em seguida, para cada usuário que abrir esse site, eles precisarão editar o arquivo de hosts e adicionar uma linha que aponte essa URL temporária para o seu IP. Assim:
xx.xx.xx.xx www.site3.tmp
- No Linux e no Mac OS, o arquivo de hosts está localizado em
/etc/hosts
- No Windows, ele está localizado em
<Windows Installation>/system32/drivers/etc/hosts
Por padrão,<Windows Installation>
está emC:/Windows
2. Criando um alias
Se a edição do arquivo hosts
não for uma solução, então essa é apenas outra opção
Isso exigiria que você editasse seu arquivo host virtual padrão. É o host virtual de www.mysite1.com
, já que é o que está abrindo quando você vai para http://xx.xx.xx.xx/mysite3
.
Essa é a razão pela qual eu não gosto dessa solução, pois torna as coisas feias e confusas. E eu só uso isso como último recurso.
Na configuração do Host Virtual, adicione a seguinte linha (Alterando os caminhos conforme necessário, é claro):
Alias /mysite3 /home/mysite3/
# Notice that there isn't a trailing slash
# So this won't work: Alias /mysite3/ /home/mysite3/
Claro, se você precisar adicionar alguma configuração do apache ao diretório, o arquivo também precisará ser feito no mesmo arquivo host.
<Directory /home/site3/>
AllowOverride All # Just an example
</Directory>
3. (Bônus) Combinando a solução
Isto é melhor que a segunda solução, mas não tão boa quanto a primeira
O arquivo host virtual padrão é o primeiro carregado pelo apache. E por padrão, o apache os carrega em ordem alfabética. Então, o que você pode fazer, você pode criar um novo arquivo de host virtual que precede todos os outros arquivos de hosts virtuais.
Por exemplo, 000-default
(que agora é feito na configuração padrão do apache2.4).
Em seguida, crie todos os seus aliases nesse arquivo de host, e o URL padrão desse host virtual irá para uma página 403. Então, no final, você teria isso:
www.mysite1.com --> /home/mysite1
www.mysite2.com --> /home/mysite2
xx.xx.xx.xx --> 403 Error
xx.xx.xx.xx/site3 --> /home/site3
xx.xx.xx.xx/site4 --> /home/site4
Isso é preferível à segunda solução, pois essa pode entrar em conflito com seus outros sites. Por exemplo, ele pode ficar confuso com suas reescritas de URL.