recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment empêcher plusieurs noms de domaine d'accéder à mon site Web dans l'environnement nginx ?

Grâce à l'analyse des sources de trafic, nous avons découvert des problèmes liés au fait que des personnes accèdent à ce site via certains noms de domaine et cliquent de manière malveillante sur les publicités. Comment bloquer ces noms de domaine via les règles nginx ?

if ( $host = "www.xxx.net" or $host = "ads.xxx.com" ) {
    rewrite ^/(.*)$ http://www.sdfdsfgffghgf3sdfsdsdfsdf.com/ permanent;
}

Les règles ci-dessus ne sont pas valides, veuillez aider un expert à rédiger une règle.

phpcn_u1582phpcn_u15822791 Il y a quelques jours510

répondre à tous(3)je répondrai

  • 我想大声告诉你

    我想大声告诉你2017-05-16 17:27:31

    J'ai essayé les méthodes ci-dessus mais j'ai échoué.
    Excusez-moi, dans quel paragraphe faut-il placer les règles ci-dessus ?

    J'ai trouvé cette règle sur certains sites internet :

    <IfModule mod_rewrite.c>
    

    RéécritureEngineOn

    Bloquer le domaine

    RewriteCond %{HTTP_REFERER} ads.acesse.com [NC]
    RéécrireRule ^(.*)$ -[F]

    Est-ce correct s'il est converti en règles nginx :

    if ($http_referer ~* "ads.acesse.com"){
    set $rule_0 1$rule_0;
    

    }
    si ($rule_0 = "1"){
    réécrire ^/(.*)$ /-[F];
    }

    Veuillez demander à des experts de vous aider à juger.

    Effet requis : interdire d'accéder au site cible via un certain nom de domaine, par exemple passer de xxx.com à aaa.com pour augmenter le trafic de manière malveillante et cliquer sur les publicités :

    Environnement : nginx
    Règles :

        if ($http_referer ~* ads\.xxx\.com){
        set $rule_0 1$rule_0;
    }
    if ($rule_0 = "1"){
        rewrite ^/(.*)$ /-[F];
    }
    

    Il suffit de mettre les règles ci-dessus dans la section serveur. Après deux jours de tests, aucune redirection n'a été trouvée via un certain nom de domaine.

    répondre
    0
  • 世界只因有你

    世界只因有你2017-05-16 17:27:31

    Le vôtre est juste un saut de nom de serveur,
    D'après ce que vous avez dit, il devrait être jugé par la source,
    Vous devez donc juger la référence

        valid_referers none blocked www.mydomain.com *.mydomain.com; 
     
     if ($invalid_referer) { 
        return   403; 
      } 

    Ce qui précède est un système de liste blanche, les règles de liste noire peuvent également être utilisées

      location / {
        if ($http_referer ~* ^xxxxx$) {
           rewrite 493;
        }
    }

    répondre
    0
  • 習慣沉默

    習慣沉默2017-05-16 17:27:31

    Ajoutez le code suivant au serveur :

        listen       80 default;
        server_name  _;
        return 500;
    

    répondre
    0
  • Annulerrépondre