web-dev-qa-db-fra.com

Comment arrêter les autres domaines pour rediriger 301 vers le domaine de mon site Web?

J'ai trouvé 301 quelqu'un qui redirige son domaine de site Web vers mon domaine de site Web.

fakedomain.com -> 301 redirections -> correctdomain.com

En utilisant les informations de contact trouvées par la requête whois, j’ai déjà contacté, le propriétaire de fakedomain.com lui disant de supprimer la redirection 301, mais je n’ai pas obtenu de réponse ...

Je pense donc résoudre ce problème moi-même: depuis mon serveur, j’utilise nginx web server: y at-il un moyen de bloquer ou d’empêcher que cela se produise?

Et quelles sont les conséquences de cette redirection du point de vue du référencement?

Remarque:

lorsqu'un utilisateur saisit www.fakedomain.com dans le navigateur, le serveur DNS du domaine de l'autre redirige vers www.mondomaine.com et dans la réponse de l'en-tête HTTP , aucun ensemble de référents n'est défini . Pour mieux expliquer, voici les en-têtes HTTP d'une requête effectuée sur le navigateur Chrome:

Général
URL de la demande: http://www.fakedomain.com/
Méthode de requête: GET
Code du statut: 301 déplacé de façon permanente
Adresse distante: 46.101.241.137: 80

En-têtes de réponse
Connexion: garder en vie
Contenu Longueur: 185
Content-Type: text/html
Date: mer. 28 déc. 2016 00:30:41 GMT
Lieu: http://www.correctdomain.com/
Serveur: nginx/1.10.2

En-têtes de demande
Accepter: texte/html, application/xhtml + xml, application/xml; q = 0,9, image/webp, /; q = 0,8
Accept-Encoding: gzip, deflate, sdch
Accept-Language: it-IT, it; q = 0,8, en-US; q = 0,6, en; q = 0,4
Connexion: garder en vie
Hôte: www.fakedomain.com
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, comme Gecko) Chrome/55.0.2883.95 Safari/537.36

2
mgambella

L'idée de rediriger les demandes en arrière n'est pas bonne, car cela pourrait produire des boucles de redirection. Au lieu de cela, renvoyez mieux une erreur pour les visiteurs avec le référent du domaine que vous souhaitez bloquer.

Le scénario fonctionnera comme:

  • aliendomain.com des liens vers votre site.
  • Quelqu'un clique sur ce lien pour visiter votre site,
  • Votre serveur reconnaît que ce visiteur vient du site, vous ne voulez pas de visiteurs de
  • et répond avec une erreur.

Les variantes suivantes devraient faire le travail:

location = /index.html {
if ($http_referer ~* (www.)?alienadomain.com) {
return 403;
}
}

pour ce faire, vous aurez peut-être besoin de celui-ci: http://nginx.org/en/docs/http/ngx_http_referer_module.html . Je ne suis pas sûr, où ce module fait partie du package par défaut.

ou alors:

if ($http_referer ~ "((www.)?alienadomain\.com)") {
set $prohibited "1";
}

if ($prohibited) {
return 403;
}

Ou même en utilisant map , comme ceci

map $http_referer $bad_referer {
default                  0;
"~alienadomain.com"      1;
}

if ($bad_referer) {
return 403;
}

Ou, en utilisant plusieurs mots-clés:

if ($http_referer ~* (aliendomain|another_aliendomain)) {
return 403;
}
1
Evgeniy