htaccess: limite para apenas determinados subdomínios

1

Eu tenho uma configuração ssl curinga no Apache para um domínio para que eu possa criar qualquer tipo de subdomínio na hora.

<VirtualHost *:443>
DocumentRoot "/var/www/html"
ServerName www.domain.com
ServerAlias domain.com *.domain.com
....
</VirtualHost>

Isso funciona muito bem, pois eu adiciono subdomínios com frequência e não preciso de nenhum outro tratamento especial.

É claro que o problema é que agora qualquer pessoa pode ir para uma página padrão com qualquer subdomínio aleatório. ou seja, random.domain.com

Quais são minhas opções aqui para limitar o acesso apenas aos subdomínios atualmente configurados? Uma regra no acesso à correção seria viável? Algo como se não fosse um desses subdomínios atuais:

RewriteCond %{HTTP_HOST} !^sub\.domain\.com [NC]
RewriteCond %{HTTP_HOST} !^sub2\.domain\.com [NC]
    
por Tom 24.02.2016 / 02:47

2 respostas

0

Por que não usar o código que você já escreveu e adicionar uma linha que reconfigura todas as solicitações de outros subdomínios para um diretório que não existe (ou redirecioná-las para uma página que diz que o site a que eles tentaram ir não existe )?

RewriteCond %{HTTP_HOST} !^sub\.domain\.com [NC]
RewriteCond %{HTTP_HOST} !^sub2\.domain\.com [NC]
RewriteRule (.*) http://dev.domain.com/$1 [R=301,L]

Em seguida, você pode configurar um subdomínio dev.domain.com e fazer com que ele retorne uma página informando que o subdomínio solicitado não existe ou não está disponível ou algum outro texto que você deseja enviar de volta ao solicitante.

link

    
por 29.02.2016 / 16:55
0

Eu sugiro que você use:

<VirtualHost *:443>
DocumentRoot "/var/www/html"
ServerName www.domain.com
ServerAlias domain.com
ServerAlias sub.domain.com
ServerAlias sub2.domain.com
....
</VirtualHost>

<VirtualHost *:443>
DocumentRoot "/"
ServerName www.domain.com
ServerAlias *.domain.com
<Directory "/">
    Deny from all
</Directory>
</VirtualHost>
    
por 24.02.2016 / 03:34