Préface

Après avoir utilisé le plugin hexo-submit-urls-to-search-engine avec hexo, vous pouvez soumettre proactivement les nouveaux liens de votre blog Hexo aux plateformes pour webmasters des moteurs de recherche Google, Bing et Baidu afin d’améliorer la qualité et la vitesse d’indexation de votre site web. Ce plugin vous permet d’envoyer des demandes d’indexation pures, naturelles et issues de l’élevage végétal aux principaux moteurs de recherche, une fois pour toutes.

Par exemple, l’un de mes articles est maintenant parfois indexé par Bing seulement 5 minutes après sa publication (c’est le meilleur cas, mais la stabilité à long terme n’est pas garantie). Vous voyez, c’est la puissance de hexo-submit-urls-to-search-engine. Baidu et Google sont légèrement plus lents.

Ces trois principaux moteurs de recherche détiennent 97 % des parts de marché mondial (y compris les méta-moteurs de recherche Doje, Duckduckgo, etc. ; Yahoo et Ecosia qui utilisent l’index de Bing, etc.).

Avertissement

L’utilisation non professionnelle d’autres codes de soumission similaires peut entraîner des effets secondaires dangereux, y compris, mais sans s’y limiter : le syndrome des failles de sécurité, le syndrome du code redondant, le syndrome de la réinvention de la roue, le syndrome de la lecture de documents, le questionnement existentiel, la dépression, les maux de tête, voire la mort, l’anéantissement et la destruction.

Adresse Github

Les groupes de discussion officiels QQ et Telegram ont cessé de fonctionner. Veuillez vous rendre sur la page Github issue pour participer aux discussions.

Procédure opérationnelle

Démarrage rapide :

  1. Obtenir les clés de chaque plateforme pour webmasters
  2. Installer et configurer le plugin hexo-submit-urls-to-search-engine
  3. hexo clean && hexo g && hexo d et vérifier les résultats de la soumission
  4. Si la soumission réussit, rendez-vous sur l’adresse Github et cliquez sur le bouton Star pour soutenir le projet
  5. Suivez également le projet sur Github pour recevoir des alertes de mise à jour du plugin
  6. Vous pouvez aussi cliquer ici pour faire un don

Obtenir les clés de la plateforme pour webmasters

Les clés à « noter » dans cette section doivent être renseignées dans le _config.yml de hexo, le format sera donné plus loin.

Concernant la vérification du site : certains thèmes Hexo permettent d’ajouter des balises HTML de vérification de plateforme pour webmasters. Une fois les paramètres correspondants renseignés, exécutez hexo g && hexo d pour effectuer la vérification. Veuillez rechercher vous-même sur Google pour connaître les étapes de fonctionnement générales et détaillées : hexo plateforme pour webmasters vérification.

Baidu

Baidu est un moteur de recherche chinois. À moins d’effectuer des procédures complexes d’enregistrement de site web auprès des autorités chinoises, il est difficile pour un site web d’être indexé.

Si le serveur de votre site web est situé en dehors de la Chine, il est pratiquement impossible d’effectuer les procédures d’enregistrement de site web.

Veuillez consulter l’ancienne documentation pour savoir comment soumettre des liens à Baidu

Bing

La plateforme pour webmasters de Bing est divisée en deux versions, l’ancienne et la nouvelle.

  1. Enregistrez-vous et connectez-vous à la nouvelle plateforme pour webmasters de Bing Outils pour webmasters Bing
  2. Ajoutez un site web
  3. Allez dans la page de gestion du site, puis dans Paramètres, Accès API, Clé API et notez la clé API

Ouvrir les paramètres à partir de Soumettre depuis l’URL

Interface Accès API

Obtenir la clé API depuis la nouvelle plateforme pour webmasters de Bing

(Récemment, la plateforme pour webmasters de Bing a été mise à niveau et le serveur et la mise en page sont instables. Si le jeton ne s’affiche pas, vous pouvez réessayer plus tard.) La plateforme pour webmasters a maintenant été mise à niveau vers la nouvelle version.

Voici une illustration de l’ancienne plateforme pour webmasters de Bing :

Obtenir la clé API webmaster de Bing depuis l’ancienne plateforme pour webmasters de Bing

Google

Si votre serveur est situé en Chine continentale, veuillez noter que votre serveur doit pouvoir accéder à l’internet international pour pouvoir soumettre des liens à Google.

La plateforme pour webmasters de Google est également divisée en deux versions, l’ancienne et la nouvelle, mais la relation entre les deux n’est pas aussi bien gérée que celle de Bing. De plus, l’API d’indexation de Google que nous utilisons n’est pas fournie par la plateforme pour webmasters, mais appartient à la plateforme de développement de Google, google developers. Durant le processus, vous pouvez vous référer à la documentation officielle (accessible en Chine continentale) pour effectuer la configuration.

Procédure d’utilisation :

  1. Ouvrez la documentation officielle et suivez les instructions pour créer un projet et un compte de service. Il suffit de suivre les instructions pour effectuer l’opération de configuration sur le site web, il n’est pas nécessaire d’effectuer les opérations suivantes telles que l’obtention de jetons d’accès.
  2. Même si vous ajoutez l’adresse e-mail d’autorisation dans la nouvelle « Search Console » de Google selon la documentation officielle de Google, vous serez toujours invité à indiquer que vous n’avez pas l’autorisation. Veuillez vous rendre à l’ancien outil pour webmasters, cliquer sur votre site web et ajouter l’adresse e-mail à celui-ci. Vous pouvez maintenant soumettre les liens directement dans la nouvelle plateforme pour webmasters.
  3. Placez le fichier de clé json que vous avez obtenu dans le répertoire racine de hexo (au même endroit que le fichier _config.yml de hexo).

L’ancien outil pour webmasters de Google :

Ancien outil pour webmasters1

Ancien outil pour webmasters2

En outre, la documentation officielle contient l’avertissement suivant. Veuillez décider s’il faut activer la fonction de soumission de liens à Google en fonction de la situation réelle :

Actuellement, l’API d’indexation ne peut être utilisée que pour récupérer des pages web qui contiennent JobPosting ou BroadcastEvent (imbriqué dans VideoObject). Pour les sites web contenant de nombreuses pages web à courte durée de vie (telles que des offres d’emploi ou des vidéos en direct), l’API d’indexation mettra à jour le contenu des résultats de recherche en soumettant des mises à jour pour différents contenus.

Démarrage rapide de l’API d’indexation | Centre de recherche Google | Google for Developers

En tout cas, je l’ai soumis. Si Google ne récupère pas le site web, comment saura-t-il que votre page web ne contient pas d'offres d'emploi ou de vidéos en direct ? Puisqu’il a été récupéré, même s’il ne trouve pas d'offres d'emploi ou de vidéos en direct, pourquoi gaspiller des ressources et jeter les informations récupérées ? Puisqu’il l’utilise, notre objectif est atteint. Dans l’utilisation réelle, il semble que Google n’ait pas non plus réduit la puissance à cause de cela. Peut-être que Google a oublié de modifier le document ? Je constate actuellement qu’il y a deux erreurs graves dans ce document qui n’ont pas été corrigées depuis de nombreuses années.

Configuration de hexo

Installation de ce plugin

Veuillez exécuter la commande suivante dans le répertoire racine de hexo :

Bien sûr, l’utilisation de cnpm permet un téléchargement plus rapide dans la région de la grande Chine.

npm install --save hexo-submit-urls-to-search-engine

Ce plugin prend également en charge l’installation avec yarn :

yarn add hexo-submit-urls-to-search-engine

Modifier le fichier _config.yml de hexo

hexo-submit-urls-to-search-engine

Configurez le plugin hexo-submit-urls-to-search-engine en collant le code suivant dans le fichier _config.yml de hexo.

Conseil

Vous pouvez bien sûr utiliser des variables d’environnement pour enregistrer les clés, de sorte que même si le code source est placé dans un référentiel public, la clé ne sera pas divulguée.

hexo_submit_urls_to_search_engine:
  submit_condition: count #Condition de soumission des liens, valeurs possibles : count | period. Actuellement, seule la valeur count est prise en charge
  count: 10 # Soumettre les 10 liens les plus récents
  period: 900 # Soumettre les liens dont l'heure de modification est inférieure à 900 secondes
  google: 0 # Soumettre ou non à Google, valeurs possibles : 1 | 0 (0 : non ; 1 : oui)
  bing: 1 # Soumettre ou non à bing, valeurs possibles : 1 | 0 (0 : non ; 1 : oui)
  baidu: 1 # Soumettre ou non à baidu, valeurs possibles : 1 | 0 (0 : non ; 1 : oui)
  txt_path: submit_urls.txt ## Nom du document texte. Les liens à soumettre seront enregistrés dans ce document texte
  baidu_host: https://cjh0613.github.io ## Domaine enregistré dans la plateforme pour webmasters de Baidu
  baidu_token: Veuillez l'obtenir en suivant les instructions de la documentation ## Veuillez noter qu'il s'agit de votre clé, veuillez ne pas la publier directement dans le référentiel public !
  bing_host: https://cjh0613.github.io ## Domaine enregistré dans la plateforme pour webmasters de Bing
  bing_enable_indexnow: false # Soumettre ou non des liens à Bing avec indexNow : true (Oui) | false (Non). Seules les versions 2.1.1 et suivantes peuvent activer cette fonctionnalité.
  bing_token: Veuillez l'obtenir en suivant les instructions de la documentation ## Veuillez noter qu'il s'agit de votre clé, veuillez ne pas la publier directement dans le référentiel public !
  google_host: https://cjh0613.github.io ## Domaine enregistré dans la plateforme pour webmasters de Google
  google_key_file: Project.json #Fichier json qui stocke la clé Google. Il est placé dans le répertoire racine du site web (au même emplacement que le fichier _config.yml de hexo). Veuillez ne pas publier directement le contenu du fichier json dans un référentiel public !
  google_proxy: http://127.0.0.1:8080 # Proxy http système utilisé pour soumettre des URL à Google, entrez 0 pour ne pas l'utiliser
  replace: 0  # Remplacer ou non une partie de la chaîne dans le lien, valeurs possibles : 1 | 0 (0 : non ; 1 : oui)
  find_what: http://cjh0613.github.io/blog
  replace_with: https://cjh0613.com

Conséquences de la divulgation de la clé

Votre « ennemi », l’intelligence artificielle consciente, ou les terroristes peuvent utiliser votre clé pour soumettre des liens vers des pages inexistantes aux moteurs de recherche. Cela épuisera votre quota et vous empêchera d’effectuer une soumission normale, et l’envoi de liens morts entraînera une baisse du poids du site web.

Remarques

  • submit_condition : prend en charge deux méthodes de détermination de la soumission de liens, c’est-à-dire count | period. Les options de configuration count | period ci-dessous sont appliquées respectivement
  • period : une période, en secondes. Si la différence entre l’heure de mise à jour de l’article et l’heure d’exécution de ce plugin est inférieure à cette valeur, le lien correspondant sera soumis. Par exemple : il y a deux fichiers a.html et b.html, qui correspondent respectivement à https://yoursite.com/a.html et https://yoursite.com/b.html. La différence entre leurs heures de mise à jour et l’heure d’exécution de ce plugin est de 800 s et 1000 s respectivement (le champ period est défini sur 900), alors https://yoursite.com/a.html sera soumis, et https://yoursite.com/b.html ne le sera pas
  • google_proxy : le proxy http système utilisé pour soumettre des URL à Google, format : http://proxyhost:port, il suffit de modifier proxyhost et port ; si Hexo est déployé à l’étranger, vous pouvez entrer 0 pour ne pas l’utiliser. Si vous utilisez un logiciel de mise en réseau scientifique, proxyhost est généralement 127.0.0.1 et port peut être consulté dans les paramètres du logiciel, généralement 8080. Sur Win10, vous pouvez le consulter dans Paramètres->Proxy.
  • replace : certains liens peuvent ne pas être générés correctement (par exemple, les noms de domaine chinois, la page d’accueil située sur http://cjh0613.github.io/blog, etc.). Il s’agit d’une fonction de remplacement simple et directe qui remplace la chaîne spécifiée dans tous les liens générés. Dans l’exemple, http://cjh0613.github.io/blog est remplacé par https://cjh0613.com. Vous pouvez également remplacer le nom de domaine chinois par le nom de domaine transcodé.

12/07/2020 Mise à jour de cette section de commentaires, merci à liuyib pour ses suggestions. 12/05/2021 Ajout de google_proxy

Une fois la configuration ci-dessus terminée, lorsque vous exécutez la commande hexo generate dans le répertoire racine de Hexo, un fichier .txt sera généré pour stocker les liens à soumettre.

Vous pouvez ouvrir ce fichier pour vérifier si le lien est correct. S’il ne l’est pas, veuillez consulter le fichier _config.yml de hexo pour effectuer la configuration. Vous pouvez également modifier manuellement ce fichier .txt avant de soumettre les liens.

deploy

Si vous n’avez jamais ajouté l’élément de configuration deploy:, copiez-collez directement le code suivant dans le fichier _config.yml de hexo, afin de remplacer l’élément de configuration deploy: par défaut.

deploy:
- type: cjh_google_url_submitter
- type: cjh_bing_url_submitter
- type: cjh_baidu_url_submitter

Une fois cette étape terminée, vous pouvez soumettre automatiquement les liens aux moteurs de recherche lorsque vous exécutez la commande hexo deploy.

  • Vous devez exécuter la commande hexo deploy ou hexo d pour déclencher la soumission, que vous ayez utilisé cette commande pour le déploiement auparavant ou non.

Bien sûr, vous devez exécuter la commande hexo generate pour générer le fichier .txt le plus récent afin de stocker les liens à soumettre.

Si la soumission réussit, veuillez vous rendre sur le référentiel Github et soutenir le projet avec une étoile, merci !

Si l’élément de configuration deploy: a déjà été configuré, le fait de coller directement le bloc de code ci-dessus entraînera un conflit de configuration. Il suffit de l’ajouter sous l’élément de configuration deploy: existant. Par exemple :

deploy:
- type: git
  repo: 
    coding: git@xxx
  branch: master 
  
  #Ajouter les éléments de configuration de ce plugin :
- type: cjh_google_url_submitter
- type: cjh_bing_url_submitter
- type: cjh_baidu_url_submitter

Attention : chaque type: est précédé de - .

Prise en charge de l’intégration continue

Cette section fournit une référence pour les méthodes de déploiement dans lesquelles hexo est stocké dans un référentiel public et compilé et publié à l’aide de l’intégration continue (CI, comme Github action, travis, coding-ci, netlify, etc.).

Baidu et Bing peuvent utiliser des variables d’environnement pour enregistrer les clés, Google a d’autres solutions, voir ci-dessous

Veuillez noter que si vous utilisez le déploiement automatique de la CI, vous devez ajouter updated: dans le Front-matter de chaque page (la zone séparée par --- en haut du fichier .md, utilisée pour spécifier les variables des fichiers individuels) pour indiquer à Hexo de corriger « l’heure de la dernière modification de l’article », par exemple :

---
title: Bonjour le monde
date: 2013/7/13 20:46:25
updated: 2020-08-25 9:36:00
---

En effet, lorsque le fichier est placé sur un ordinateur local, s’il n’y a pas de updated:, Hexo lit les propriétés du fichier et utilise « l’heure de la dernière modification du fichier » comme « heure de la dernière modification de l’article », et il peut déterminer et soumettre normalement les 10 liens les plus récents ; lors du déploiement automatique de la CI, étant donné que les ressources de Hexo ne sont clonées que sur le serveur, s’il n’y a pas de updated: ajouté, Hexo lira également les propriétés du fichier, mais à ce moment-là, l’heure de la dernière modification des propriétés sera exactement la même que l’heure du clonage git, Hexo obtiendra la mauvaise « heure de la dernière modification de l’article » et ne pourra pas déterminer et soumettre correctement les liens les plus récents.

  1. Veuillez d’abord saisir 0 dans les éléments de configuration baidu_token: et bing_token: de hexo_submit_urls_to_search_engine:.
  2. Définissez les variables d’environnement BAIDU_TOKEN et BING_TOKEN. Les valeurs sont les jetons que vous avez obtenus.
  3. Si vous utilisez Github Action, vous devez également définir des variables d’environnement dans le fichier yml, il y a un exemple ci-dessous
  4. hexo clean && hexo generate && hexo deploy et profitez de la vie

Définir les variables d’environnement

Référence :

hexo_submit_urls_to_search_engine:
  submit_condition: count #Condition de soumission des liens, valeurs possibles : count | period. Actuellement, seule la valeur count est prise en charge
  count: 10 # Soumettre les 10 liens les plus récents
  period: 900 # Soumettre les liens dont l'heure de modification est inférieure à 900 secondes
  google: 1 # Soumettre ou non à Google, valeurs possibles : 1 | 0 (0 : non ; 1 : oui)
  bing: 1 # Soumettre ou non à bing, valeurs possibles : 1 | 0 (0 : non ; 1 : oui)
  baidu: 1 # Soumettre ou non à baidu, valeurs possibles : 1 | 0 (0 : non ; 1 : oui)
  txt_path: submit_urls.txt ## Nom du document texte. Les liens à soumettre seront enregistrés dans ce document texte
  baidu_host: https://en.cjh0613.com ## Domaine enregistré dans la plateforme pour webmasters de Baidu
  baidu_token: 0 ## Veuillez noter qu'il s'agit de votre clé, veuillez ne pas la publier directement dans le référentiel public !
  bing_host: https://en.cjh0613.com ## Domaine enregistré dans la plateforme pour webmasters de Bing
  bing_token: 0 ## Veuillez noter qu'il s'agit de votre clé, veuillez ne pas la publier directement dans le référentiel public !
  google_host: https://en.cjh0613.com ## Domaine enregistré dans la plateforme pour webmasters de Google
  google_key_file: Project.json #Fichier json qui stocke la clé Google. Il est placé dans le répertoire racine du site web (au même emplacement que le fichier _config.yml de hexo). Veuillez ne pas publier directement le contenu du fichier json dans un référentiel public !
  google_proxy: 0 # Proxy http système utilisé pour soumettre des URL à Google, entrez 0 pour ne pas l'utiliser
  replace: 0  # Remplacer ou non une partie de la chaîne dans le lien, valeurs possibles : 1 | 0 (0 : non ; 1 : oui)
  find_what: http://cjh0613.github.io/blog
  replace_with: https://cjh0613.com

Github Action, vous devez également définir des variables d’environnement dans le fichier yml :

- name: xxxx #Remplissez ce que vous voulez
  env:
    BAIDU_TOKEN: ${{ secrets.BAIDU_TOKEN }} # Faites attention à ceci, les autres ne sont que des détails
    BING_TOKEN: ${{ secrets.BING_TOKEN }} # Faites attention à ceci, les autres ne sont que des détails
  run: |
    npm i -g hexo-cli # Installer hexo
    npm i
    ……
    hexo deploy    

Quant à la soumission de liens à Google, il y a tellement d’informations dans le fichier de clé json, et c’est vraiment gênant de copier-coller et de définir des variables d’environnement… J’ai placé le fichier de clé json dans un référentiel privé, puis je l’ai cloné et copié dans le répertoire racine pour résoudre le problème.

Mise à jour du plugin

Rappel de mise à jour du plugin

Après avoir installé ce plugin, veuillez suivre ce projet sur Github afin de recevoir des rappels de mise à jour du plugin ( choisissez Releases only pour recevoir uniquement des rappels de mise à jour, si vous choisissez Watching, vous recevrez également des notifications pour les Issues, les Pull requests, etc. et elles seront envoyées par e-mail).

Choisissez Releases only

Opération de mise à jour

Veuillez exécuter la commande suivante dans le répertoire racine de hexo :

Bien sûr, l’utilisation de cnpm permet un téléchargement plus rapide dans la région de la grande Chine.

npm install --save hexo-submit-urls-to-search-engine@version

La commande que j’avais donnée précédemment était une autre commande : npm update --save hexo-submit-urls-to-search-engine, mais j’ai rencontré des problèmes lors de mes tests.

Mise à jour de yarn :

yarn add hexo-submit-urls-to-search-engine@version

Mise à jour incompatible

Avertissement

Parfois, la mise à jour du plugin n’est pas rétrocompatible et il peut être nécessaire de modifier les éléments de configuration du fichier _config.yml de hexo qui sont liés à ce plugin, ou d’effectuer d’autres modifications. Cette situation se produit généralement lorsque le nombre qui précède le premier point décimal dans le numéro de version augmente. Par exemple, la mise à niveau de ^1.0.0 à ^2.0.0.

Mise à niveau de 1.x.x à 2.x.x :

Vous devez ajouter les trois éléments de configuration suivants à l’élément de configuration hexo_submit_urls_to_search_engine: :

  replace: 0  # Remplacer ou non une partie de la chaîne dans le lien, valeurs possibles : 1 | 0 (0 : non ; 1 : oui)
  find_what: http://cjh0613.github.io/blog
  replace_with: https://cjh0613.com

Bon, je constate que cette mise à niveau est rétrocompatible, même s’il n’y a pas ces trois éléments de configuration, il n’y aura pas d’erreur…

Informations de retour

Informations de soumission réussie

Bing

Réponse de Bing :  { d: null }

Google

Réponse de Google :  { urlNotificationMetadata:
   { url:
      'https://cjh0613.github.io',
     latestUpdate:
      { url:
         'https://cjh0613.github.io',
        type: 'URL_UPDATED',
        notifyTime: '2020-06-12T05:37:25.701779228Z' } } }

Autres

Vous pouvez vous référer à la documentation officielle pour d’autres réponses, mais en général, une traduction de la réponse vous en fera connaître la raison.

Parfois, c’est parce que les moteurs de recherche n’autorisent qu’un certain nombre de liens par jour. Vous pouvez vous connecter à leurs sites officiels pour le vérifier. Après que j’ai changé le nom de domaine de mon site de cjh0613.github.io à cjh0613.com, le quota de Bing était de 10. Après 10 jours consécutifs de soumission, le quota est soudainement passé de 10 à 10 000.

Si certains liens ne sont pas soumis, veuillez les traiter manuellement : modifiez le fichier txt qui stocke les liens soumis en fonction du retour d’information (généralement en supprimant les liens soumis avec succès), puis exécutez uniquement la commande hexo deploy pour les soumettre à nouveau. Il n’est pas nécessaire de régénérer le site web.

Si vous souhaitez soumettre des liens aux moteurs de recherche tous les jours, il vous suffit d’exécuter la commande hexo d tous les jours. Vous pouvez également configurer Github Action pour qu’il exécute la commande hexo g && hexo d tous les jours, il n’est pas nécessaire de réinventer la roue.

Vérifier les résultats

Vérifier l’index

Pour prendre l’exemple de la vérification de l’index de ce site, ouvrez un moteur de recherche et saisissez site:domaine. Ici, c’est :

site:cjh0613.github.io

et effectuez la recherche.

Le temps nécessaire pour que l’indexation d’un nouveau site passe de 0 à 1 peut être très long, peut-être un mois… Veuillez patienter.

La vitesse réelle de l’indexation est également liée à d’autres facteurs. Il existe de nombreux documents de référencement sur internet, mais ils sont tous centrés sur les descriptions officielles.

Vérifier l’historique des soumissions

Bing

Vous pouvez vous connecter à la nouvelle plateforme pour webmasters de Bing pour consulter une liste détaillée des liens soumis (mise à jour en temps réel) :

https://www.bing.com/webmasters/submiturl?siteUrl=votre lien de site web

Historique de soumission Bing et vérification du quota restant

Google

Vous ne pouvez consulter que le nombre cumulé de liens soumis et le pourcentage d’échecs de soumission (mis à jour en temps réel) dans le tableau « Erreurs » à l’adresse ci-dessous (jusqu’à 30 jours maximum). Bien qu’il y ait un graphique des données soumises quotidiennes, c’est comme s’il n’y en avait pas…

https://console.developers.google.com/apis/api/indexing.googleapis.com/metrics?project=

Vérification du nombre de liens soumis à Google

Documents de référence pour le développement de ce plugin

Veuillez consulter l’ancienne documentation