Como bloquear o domínio IDN no arquivo .htaccess?

1

Como posso bloquear o domínio IDN no arquivo .htaccess ou apenas um domínio com marcas especiais / internacionalizadas? Eu também quero bloquear URLs de, por exemplo, .ru .de etc.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^https?://([^.]+\.)*xxx\.com [NC]
RewriteRule .* - [F]
</IfModule>

Eu uso isso para bloquear sites e subsites. Mas eu quero bloquear domínio que contenha marcas especiais como: ąłść etc. - e não aquelas com endereço xxx.com - mas todos os sites com marcas especiais. É chamado IDN.

    
por SanHolo 13.02.2017 / 13:54

1 resposta

1

Com base na suposição não testada de que o Apache, internamente, não suporta explicitamente o IDN, mas passa pelos domínios que ele vê, você poderia reconhecer IDNs pelo fato de que seu código Punycode versão começa com xn-- :

RewriteCond %{HTTP_REFERER} ^https?://.*xn--.* [NC]

Isso pode precisar de ajustes, dependendo de suas necessidades exatas (talvez você queira ser mais ou menos rigoroso do que isso).

    
por 13.02.2017 / 15:39