Evitar o uso de curinga na configuração do alias do servidor Apache

1

Esta é uma configuração modificada do VirtualHost do meu servidor.

<VirtualHost *:80>

  ServerName example.com
  DocumentRoot /mnt/example/public


  <Directory /mnt/example/public>
    AllowOverride all
    Options -MultiViews
  </Directory>

</VirtualHost>

Descobri que posso acessar o example.com e também * .example.com, por exemplo www.example.com, abcde.example.com, etc.

Eu sei que deve haver uma configuração ServerAlias que me permita ativar o suppot de subdomínio curinga. Mas não consigo ver o ServerAlias definindo meu arquivo de configuração VirtualHost ou Apache.

Quero permitir que somente www.example.com e example.com possam acessar meu site, e outro subdomínio receberá um erro 404.

Como posso configurar isso?

Obrigado a todos. :)

    
por Victor Lam 26.10.2011 / 14:28

1 resposta

3

Acho que você está perdendo todos os seus contêineres vhost no arquivo conf:

NameVirtualHost *:80

Depois de ter feito isso, dependendo do que você deseja fazer para todos os curingas que você considera "inválidos", é possível criar os contêineres <virtualhost> necessários e, em seguida, acompanhar um final com um curinga que atua como catchall para o resto.

Veja o link

Por exemplo, o que eu fiz é ter um contêiner vhost para myhost.mydomain.tld e, em seguida, quaisquer outros domínios e, finalmente, eu tenho um contêiner para * .mydomain.tld que basicamente aponta para uma página estática notificando as pessoas se importam com o próprio negócio.

    
por 26.10.2011 / 14:44

Tags