Problème nginx redirect et supprimer les informations de reference

Nous vérifions un certain nombre de référents spam dans notre configuration nginx et nous voulons redirect leurs requests vers notre page d'accueil. Le problème est que nginx passe le referencement d'origine dans le cadre de la redirection, et donc lorsque la requête redirigée entre, le mauvais référant est toujours présent et nginx émet une autre redirection. Exemple:

Les liens du site incorrect vers example.com/page.html . Nous redirigons cette request vers example.com car nous ne voulons pas que les mauvaises references envoient du trafic vers nos pages. Le problème est que lorsque nginx reçoit la request pour example.com , ce mauvais référant est toujours présent et donc nginx émet une autre redirection, et ainsi de suite jusqu'à l'infini. Comment puis-je effacer le referencement d'origine lors de la publication d'une redirection de nginx?

Voici le bloc pertinent que nous utilisons. Nous $bad_referer avec une map dans la section http de notre configuration.

 if ($bad_referer) { return 302 http://www.example.com; } 

  • Très faible requête / seconde avec nouvelle installation NGINX
  • Nginx client_max_body_size par bloc de localization (avec le model php frontcontroller)
  • nginx ssl wildcard cert issues
  • Désactiver l'authentification pour la méthode HTTP OPTIONS (request de pré-vol) dans Nginx
  • Beaucoup d'erreurs 400 access.log avec Nginx et loadbalancer
  • nginx: regex correspondant non égal?
  • Optimiser Apache - Devrais-je utiliser APC / nginx?
  • hhvm reliant le port 80 empêchant Nginx de se lier à ce port
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.