Subdomínio comum para vários domínios virtuais no Apache2

3

Estou executando um servidor da Web com o Apache2 e vários domínios virtuais. Além disso, há um servidor de e-mail para esses domínios, expondo uma interface da web. Para cada domínio virtual example.com , tenho o subdomínio mail.example.com apontando para minha interface de webmail (Roundcube). Funciona muito bem com a seguinte configuração:

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName mail.example.com
    ServerAlias mail.vname1.com, mail.vname2.com, mail.vname3.com, #...

    DocumentRoot /srv/www/mail/
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /srv/www/mail>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride None
            Order allow,deny
            allow from all
    </Directory>

    ErrorLog /var/log/apache2/mail.error.log
    LogLevel warn

    CustomLog /var/log/apache2/mail.access.log combined
</VirtualHost>

No entanto, para cada novo cliente, tenho - entre outras coisas - para adicionar o nome de domínio correspondente à lista de ServerAlias es.

Existe uma maneira de associar automaticamente todos os subdomínios mail.* a /srv/www/mail/ ?

    
por Philip 03.12.2011 / 22:52

1 resposta

4

A diretiva ServerAlias suporta curingas - você deve ser capaz de usar o seguinte para corresponder a todos os subdomínios de 'mail'.

ServerAlias mail.*

O subdomínio curinga (ou seja, * .domínio.tld) é bem documentado, mas é difícil encontrar qualquer indicação de que a parte do domínio também possa ser um curinga.

Eu tenho usado essa abordagem com bastante frequência para subdomínios comuns, quando eu costumava usar o Apache. A única diferença é que usei um redirecionamento para uma URL comum (porque eu queria usar SSL e não queria obter um certificado para cada domínio). No entanto, foi capaz de capturar com sucesso o subdomínio, portanto, a mesma implementação deve funcionar no seu cenário. (Claro, você ainda precisa de uma diretiva estática do ServerName também).

    
por 04.12.2011 / 21:52