Je veux bloquer le trafic de quelque chose quisemble être un bot ou un autre trafic malveillant (je n´ai pas vraiment compris ce que c´est, mais je suppose que je ne le veux pas). Jusqu'à présent, je l'ai bloqué par IP, mais le trafic continue d'arriver de différents endroits.
Pour ce trafic, l’agent utilisateur est PhantomJS et ils affichent tous l’adresse locale suivante (peut-être avec quelques variantes):
fichier: ///home/poo_master/price_parse/resource_cache/140578757867264tmp2.html
Est-il possible d’utiliser .htaccess pour bloquer PhantomJS ou tout ce qui contient "poo_master / price_parse / resource_cache /"
Réponses:
2 pour la réponse № 1Pour bloquer les bots / scrapers par useragent OU par l'URL demandée, ajoutez ces règles de réécriture à .htaccess:
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^.*(PhantomJS|wget|HTTrack|python).*$ [OR]
RewriteCond %{REQUEST_URI} ^.*poo_master/price_parse.*$
RewriteRule . - [F,L]
0 pour la réponse № 2
Mettez à jour votre fichier .htaccess avec le code ci-dessous. J'espère que ça va marcher.
RewriteEngine on
RewriteCond $1 !^(index.php|resources|robots.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_USER_AGENT} ^.*(PhantomJS|wget|HTTrack|python).*$ [OR]
RewriteCond %{REQUEST_URI} ^.*poo_master/price_parse.*$
RewriteRule ^(.*)$ index.php/$1 [L,QSA]