web-dev-qa-db-fra.com

Vérification de l'agent utilisateur de Request par rapport à la gestion des URL _escaped_fragment_ lors de l'utilisation de pushState uniquement (pas de hashbangs)

Je travaille sur une application basée sur AJAX et je réfléchis à la manière de la rendre exploitable par les moteurs de recherche. J'ai lu le spécification d'analyse de Google AJAX _ mais je ne pouvais me faire une idée: si mon application utilise exclusivement PushState (c'est-à-dire, aucun hashbang dans les URL) N’est-il pas plus simple de renvoyer une version statique de l’URL de la requête si l’agent utilisateur de la requête était un robot? Cela serait-il considéré comme un cloaking? Je veux dire, je n'ai aucun problème à suivre les spécifications d'exploration AJAX et à utiliser <meta name="fragment" content="!"> avec _escaped_fragment_ urls, mais il semble beaucoup plus facile de vérifier l'agent utilisateur dans un tel cas. .

Je suis conscient que le renvoi d'informations en fonction de l'agent utilisateur de la demande est souvent associé à un référencement naturel, mais dans ce cas, à moins que quelque chose me manque, la recherche d'une URL spécifique (_escaped_fragment_) semble être la même chose que la recherche de un agent utilisateur spécifique. Dans les deux cas, je devrais générer et renvoyer une version statique de la ressource demandée et je pourrais faire de mauvaises choses si j'avais de mauvaises intentions. Autant que je sache, aucune option n'est plus sûre que l'autre.

Dois-je, bien sûr, respecter les spécifications ou serait-il acceptable d’utiliser les informations sur l’agent utilisateur? Ou existe-t-il un meilleur moyen de rendre crawlable une application Web utilisant uniquement pushState?

Toute clarification à ce sujet sera grandement appréciée.

2
Michael Benford

Je suis conscient que le renvoi d'informations en fonction de l'agent utilisateur de la requête est souvent associé à un référencement naturel, mais dans ce cas, à moins que quelque chose me manque, je recherche une URL spécifique (_escaped_fragment_). semble être la même chose que rechercher un agent utilisateur spécifique

Le camouflage a été ciblé dans la mise à jour de Google Penguin et est considéré comme une violation des consignes pour les webmasters de Google , comme il est possible de le lire ici .

Cloaking est:

cette opération est effectuée en fournissant un contenu basé sur les adresses IP ou l'en-tête HTTP User-Agent de l'utilisateur demandant la page.

Comme indiqué par Matt Cutts, une heuristique importante utilisée par Google pour détecter la dissimulation est si votre serveur Web recherche l'agent utilisateur de Googlebot - voir ceci (à 3h00). La vérification de _escaped_fragment_ n'est pas une heuristique, comme l'indique la spécification adoptée par Google.

Devrais-je absolument respecter les spécifications ou serait-il acceptable d’utiliser les informations de l’agent utilisateur?

Vous risquez de pénaliser votre site si vous vérifiez l'agent utilisateur. Donc, si vous pouvez vous en tenir à la spécification, cela serait vivement recommandé et nécessiterait probablement beaucoup moins d'effort que d'essayer de récupérer d'une pénalité ou du sandboxing .

1
dan