web-dev-qa-db-fra.com

Hijax == des redirections Javascript sournoises? Vais-je être banni de Google?

Question

Vais-je être pénalisé (Google) si " [redirections Javascript sournoises] " si j'ai la configuration Hijax suivante (qui nécessite une redirection JavaScript) sur la page indexée par google).

Objectif

Je souhaite implémenter Hijax pour permettre à AJAX content d'être accessible aux utilisateurs autres que JavaScript et aux robots d'exploration des moteurs de recherche.

Contexte

  1. Je travaille sur un serveur de fichiers statique (GitHub Pages). Aucune astuce côté serveur autorisée (donc #! "Hash bang" de Google " solution n'est pas une option).
  2. J'essaie de conserver mes fichiers DRY . Je ne veux pas répéter le modèle OUTER commun dans tous mes fichiers (en-tête, menu de navigation, pied de page, etc.). Ils habiteront dans le répertoire principal _index.html_

Configurer le Hijax

  1. La page _index.html_ contient tous les fichiers html/css/js EXTERNES ... le modèle du site.
  2. _index.html_ a un _<div id="content">_ qui contient par défaut le html "homepage".
  3. _index.html_ a un menu de navigation, avec un lien Hijax vers une page "à propos de".
  4. Lorsque JavaScript est désactivé (un robot, par exemple), il suit le lien vers _/about.html_.
  5. Avec JavaScript activé (par exemple, la plupart des gens), le lien met à jour le fragment de hachage de l'URL en _/#about_ et jQuery remplace le _<div id="content">_ innerHTML par $("#content").load("about.html #inner-container");.

Contenu AJAX

_about.html_ ne contient rien d'extra pour pouvoir essayer un contenu masqué pour les robots d'exploration.

Le fichier _about.html_ contient suffisamment de HTML/CSS/JavaScript pour afficher _/about.html_ en tant que page autonome avec ses propres données META ... par exemple. _<html><head><title>About</title>...</head><body></body></html>_.

_about.html_ n’a AUCUN modèle HTML EXTERNE (en-tête, menu de navigation, pied de page, etc.).

_about.html_ _<body>_ contient un _<div id="inner-container">_ qui contient le contenu injecté dans _index.html_.

_about.html_ a une balise _<noscript>_ en tant que premier enfant de _<body>_ qui explique aux utilisateurs non-JavaScript qu’ils consultent la page à propos de "contenu interne" - avec un lien pour accéder à la page _index.html_ page pour obtenir la mise en page complète avec menu.

La redirection (sournoise?)

Google indexe la page _/about.html_. Cependant, lorsqu'une personne avec JavaScript activé visite cette page, il n'y a pas de modèle HTML EXTERNE (par exemple, en-tête, menu de navigation, pied de page, etc.). J'ai donc besoin de faire une redirection JavaScript pour que la personne passe la page _/#about_ (en se connectant à l'état "à propos de" page "dans" _index.html_).

Je pense faire un " redirection sur clic ou après 10 secondes ".

Le résultat final est que l'utilisateur se retrouve sur une page "améliorée" sur _index.html_ avec tout son modèle OUTER - mais la page de base " "le contenu est pratiquement identique.

Problème connu lié aux liens entrants, par exemple. Partage/bookmarking

Il semble que si un utilisateur partage l’URL _/#about_ sur son blog, lorsqu’il alloue des liens entrants à mon site, tout est ignoré après le _#_ ..., il attribue une valeur à la page _/_ - Voir: https://stackoverflow.com/questions/5028405/hashbang-vs-hijax/5166665#5166665 .

Je ne peux que tenter de minimiser ce problème en proposant des boutons "Partager" sur la page avec les URL appropriées, à savoir _/about.html_.

Dupliquer

Pardon. J'ai posté cette même question sur https://stackoverflow.com/questions/5561686/hijax-sneaky-javascript-redirects-will-i-get-banned-from-google ... alors réalisé il appartient probablement plus sur ce site Stack Exchange ... Vous ne savez pas si je devrais supprimer la question Stack Overflow? Ou simplement le laisser sur les deux sites? S'il vous plaît laissez un commentaire.

3
Chris Jacob

Hijax == des redirections Javascript sournoises?

seulement s'ils sont destinés à être sournois.

Vais-je être banni de Google?

s'ils ne sont pas sournois, probablement pas.

une "sanction" est une action éditoriale ou semi-éditoriale (mini-algo visant un petit sous-échantillon de sites) allant du côté de Google à .. bien .. pénaliser les sites malveillants et spammy. afin d'obtenir une pénalité réelle, vous devez avoir une intention malveillante. Je présume que votre site est légitime, alors supprimons le mot "pénalité" et examinons les implications techniques de votre solution.

voici un bref aperçu simplifié de la façon dont Google traite votre site, voir: https://stackoverflow.com/questions/5537612/pages-not-indexed-by-google/5548511#5548511 [stackoverflow]

discovery -> crawling -> indexing -> ranking (-> ux feedback)

a) google a une étape appelée "retour ux" dans laquelle elle collecte des métriques de qualité sur le site/la page où elle a également envoyé du trafic. Si vous effectuez une redirection immédiate après que l'utilisateur ait atteint votre site, il pourrait interrompre cette étape au niveau de la page. (Ceci est juste un pourrait , seuls quelques ingénieurs spécialisés de Google savent à coup sûr)

b) L’autre problème est que les utilisateurs ont tendance à copier et coller l’URL directement à partir de la barre d’adresse, même si vous avez sur eux une boîte "partager/lier avec moi". Cette URL du comportement copier-coller de la barre d'adresse est désormais codée en dur dans l'internaute bien formé. Il n'y a donc pas de moyen - facile - de changer ce comportement.

maintenant quelques "preuves" anecdotiques: jadis, j’optimisais un gros chantier sur le marché autrichien, qui comportait ce type de redirections ajax. le site a joué dans les moteurs de recherche, mais pas aussi bon que la concurrence (non-ajaxy). ce n'est qu'après que ces redirections ont été désactivées (seule la deuxième page a été vue via une magie magique), le site a commencé à mieux fonctionner. si c'était à cause de a) ou b) (nous avons vu plus de liens directs vers les bonnes urls) je ne peux pas dire.

alors peut-être que la "deuxième page vue via ajax" est un compromis que vous pouvez rechercher.

quand même: pour les grands sites commerciaux où la question du référencement est une question de "être ou être parti", la recommandation est toujours de ne pas utiliser d'URLs jaxies, pour tout le monde: s'il vous plaît, ne vous souciez pas trop du référencement, Internet est trop amusant pour ça.

p.s .: la redirection au bout de 10 secondes semble être une chose si peu ux à faire pour que je ne l'envisage pas. De plus, les problèmes a) et b) seraient toujours là.

pps: comme pour le point a), nous vous recommandons de le publier sur le forum Google http://www.google.com/support/forum/p/Webmasters/label?lid=41234c84d9491af8&hl=fr à partir de de temps en temps, quelques humbles ingénieurs/gars du webmaster google répondent ... quelque chose)

2
Franz

Des sites de clients ont été retirés de l'index, car Google pensait que le code JavaScript était suspect. Cela se produit normalement lorsqu'un programmeur propose une méthode intelligente pour faire quelque chose de louche.

Mon conseil est le suivant: si vous devez le demander, c'est probablement un problème. Améliore-t-il considérablement l'expérience utilisateur? Sinon, pourquoi prendre le risque?

1
Joe