Prefață

După ce utilizați pluginul hexo-submit-urls-to-search-engine în hexo, puteți trimite în mod activ noi linkuri către blogul Hexo către platformele de webmasteri ale motoarelor de căutare Google, Bing și Baidu, pentru a îmbunătăți calitatea și viteza de indexare a site-ului. Acest plugin vă permite să trimiteți solicitări de indexare naturale și alimentate cu plante către principalele motoare de căutare, rezolvând problema o singură dată.

De exemplu, acum, un articol al meu uneori poate fi găsit pe Bing la doar 5 minute după publicare (acesta este cel mai bun caz, dar nu se garantează stabilitate pe termen lung). Vedeți, aceasta este puterea pluginului hexo-submit-urls-to-search-engine. Baidu și Google sunt puțin mai lente.

Aceste trei motoare de căutare majore dețin 97% din cota pieței globale a motoarelor de căutare (inclusiv meta-motoarele de căutare Dogpile, Duckduckgo etc.; Yahoo și Ecosia care utilizează indexul Bing).

Avertisment

Utilizarea neprofesională a altor coduri de trimitere similare poate duce la efecte secundare periculoase, inclusiv, dar fără a se limita la: deficiențe de securitate, sindromul codului redundant, sindromul reinventării roții, sindromul documentației dificile, îndoieli existențiale, depresie, dureri de cap și chiar moarte, dispersia sufletului, anihilare.

Adresa Github

Grupul oficial de comunicare QQ și grupul Telegram și-au încetat activitatea. Vă rugăm să mergeți la pagina de probleme Github pentru a participa la discuții.

Pașii operației

Introducere rapidă:

  1. Obțineți cheile platformelor fiecărui webmaster
  2. Instalați și configurați pluginul hexo-submit-urls-to-search-engine
  3. hexo clean && hexo g && hexo d și verificați rezultatele trimiterii
  4. Dacă trimiterea a reușit, mergeți la Adresa Github și faceți clic pe butonul Star pentru a oferi suport
  5. De asemenea, urmăriți proiectul Github pentru a primi notificări de upgrade-uri ale pluginului
  6. Puteți, de asemenea, faceți clic aici pentru a face o donație

Obțineți cheia platformei webmasterului

Cheile „înregistrate” în această secțiune trebuie completate în fișierul _config.yml al hexo, formatul fiind prezentat mai jos.

Despre verificarea site-ului: Unele teme Hexo acceptă adăugarea etichetelor HTML de verificare a platformei webmasterului. După completarea setărilor relevante, hexo g && hexo d poate fi verificat. Pentru pașii detaliați de operații generale, vă rugăm să căutați singur pe Google: hexo platformă webmaster verificare

Baidu

Baidu este un motor de căutare chinezesc. Cu excepția cazului în care vă ocupați de proceduri complicate de înregistrare a site-ului în China, site-ul web este greu de indexat.

Dacă serverul site-ului dvs. web este situat în afara Chinei, este practic imposibil să se ocupe de procedurile de înregistrare a site-ului.

Vă rugăm să consultați documentația veche pentru a afla cum să trimiteți linkuri către Baidu

Bing

Platforma de webmasteri Bing are versiuni vechi și noi.

  1. Înregistrați-vă și conectați-vă la noua platformă de webmasteri Bing Instrumente pentru webmasteri Bing
  2. Adăugați site-ul
  3. Accesați pagina de gestionare a site-ului, setări, acces API, cheie API, înregistrați cheia API

Deschideți setările din Trimitere URL

Interfața de acces API

Obțineți cheia API de la noua platformă de webmasteri Bing

(Recent, platforma de webmasteri Bing a fost actualizată, serverul și aspectul sunt instabile, dacă tokenul nu poate fi afișat, puteți încerca din nou după un timp) Acum a fost actualizată la noua platformă de webmasteri.

Aceasta este o diagramă schematică a obținerii din vechea platformă de webmasteri Bing:

Obțineți cheia API a administratorului de site Bing de la vechea platformă de webmasteri Bing

Google

Dacă serverul dvs. este situat în China, vă rugăm să rețineți că serverul dvs. trebuie să poată accesa internetul internațional pentru a putea trimite către Google.

Platforma de webmasteri Google are, de asemenea, versiuni vechi și noi, dar relația dintre cele două site-uri nu este la fel de bine gestionată ca și Bing. În plus, API-ul Google Indexing pe care îl folosim nu este furnizat de platforma webmasterului, ci aparține platformei de dezvoltatori Google. În timpul procesului, vă puteți referi la documentația oficială (accesibilă în China continentală) pentru configurare.

Pașii de utilizare:

  1. Deschideți documentația oficială și urmați instrucțiunile pentru a crea un proiect și un cont de serviciu. Trebuie doar să urmați instrucțiunile pentru a face configurația pe site-ul web, nu este necesar să finalizați operațiunile ulterioare, cum ar fi obținerea unui token de acces.
  2. Dacă adăugați doar o adresă de e-mail de permisiune în noul „Search Console” Google conform documentației oficiale Google, veți primi totuși un mesaj „fără permisiune”. Vă rugăm să mergeți la instrumentul vechi pentru webmasteri, faceți clic pe site-ul dvs. și adăugați adresa de e-mail la acesta Acum puteți trimite direct la noua platformă de webmasteri.
  3. Plasați fișierul cheie json obținut în directorul rădăcină hexo (același loc cu fișierul hexo _config.yml)

Vechiul instrument pentru webmasteri Google:

Vechiul instrument pentru webmasteri 1

Vechiul instrument pentru webmasteri 2

În plus, în documentația oficială există următorul indiciu, vă rugăm să decideți dacă să activați funcția de trimitere a linkurilor către Google în funcție de situația reală:

În prezent, API-ul de indexare poate fi utilizat numai pentru a accesa pagini web care conțin JobPosting sau BroadcastEvent (încorporate în VideoObject). Pentru site-urile web care conțin multe pagini web de scurtă durată (cum ar fi informații despre locuri de muncă sau videoclipuri live), API-ul de indexare va menține conținutul din rezultatele căutării actualizat prin trimiterea actualizărilor separat pentru conținut diferit.

Introducere rapidă în API-ul de indexare | Centrul de căutare Google | Google pentru dezvoltatori

Oricum am trimis. Dacă Google nu accesează site-ul, cum știe că pagina dvs. web nu conține „informații despre locuri de muncă sau videoclipuri live”? Din moment ce a accesat-o, chiar dacă nu a găsit „informații despre locuri de muncă sau videoclipuri live”, care este motivul să irosească resursele și să renunțe la informațiile accesate? Din moment ce o folosește, scopul nostru a fost atins. În timpul utilizării efective, Google pare să nu fi redus nici drepturile din acest motiv. Poate că Google a uitat să modifice documentul? În prezent, am găsit două erori grave în acest document care nu au fost modificate de mulți ani.

Configurați hexo

Instalați acest plugin

Vă rugăm să rulați următoarele în directorul rădăcină hexo:

Desigur, utilizarea cnpm în regiunea Chinei Mari este mai rapidă pentru descărcare

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

Acest plugin acceptă și instalarea yarn:

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

Editați _config.yml al hexo

hexo-submit-urls-to-search-engine

Configurați pluginul hexo-submit-urls-to-search-engine și lipiți codul de mai jos în _config.yml al hexo.

Sfat

Desigur, puteți utiliza variabile de mediu pentru a înregistra cheia, astfel încât, chiar dacă codul sursă este pus într-un depozit public, cheia nu va fi dezvăluită.

hexo_submit_urls_to_search_engine:
  submit_condition: count # Condiția ca linkul să fie trimis, valorile opționale: count | period Acum acceptă doar count
  count: 10 # Trimite ultimele 10 linkuri
  period: 900 # Trimite linkuri al căror timp de modificare este în 900 de secunde
  google: 0 # Dacă trimiteți către Google, valorile opționale: 1 | 0 (0: Nu; 1: Da)
  bing: 1 # Dacă trimiteți către bing, valorile opționale: 1 | 0 (0: Nu; 1: Da)
  baidu: 1 # Dacă trimiteți către baidu, valorile opționale: 1 | 0 (0: Nu; 1: Da)
  txt_path: submit_urls.txt ## Numele documentului text, linkurile care trebuie trimise vor fi stocate în acest document text
  baidu_host: https://cjh0613.github.io ## Domeniul înregistrat în platforma de webmasteri Baidu
  baidu_token: Vă rugăm să obțineți conform instrucțiunilor din document ## Vă rugăm să rețineți că aceasta este cheia dvs., așa că nu o publicați direct într-un depozit public!
  bing_host: https://cjh0613.github.io ## Domeniul înregistrat în platforma de webmasteri bing
  bing_enable_indexnow: false # Dacă trimiteți linkuri către Bing folosind indexNow: true (Da) | false (Nu). Această funcție poate fi activată numai pentru versiunea 2.1.1 și versiunile ulterioare.
  bing_token: Vă rugăm să obțineți conform instrucțiunilor din document ## Vă rugăm să rețineți că aceasta este cheia dvs., așa că nu o publicați direct într-un depozit public!
  google_host: https://cjh0613.github.io ## Domeniul înregistrat în platforma de webmasteri Google
  google_key_file: Project.json # Fișierul json care stochează cheia Google, plasat în directorul rădăcină al site-ului (același loc cu fișierul hexo _config.yml), vă rugăm să nu publicați conținutul fișierului json direct într-un depozit public!
  google_proxy: http://127.0.0.1:8080 # Proxy http de sistem folosit pentru a trimite adresa URL către Google, completați 0 pentru a nu utiliza
  replace: 0 # Dacă se înlocuiesc unele șiruri din link, valorile opționale: 1 | 0 (0: Nu; 1: Da)
  find_what: http://cjh0613.github.io/blog
  replace_with: https://cjh0613.com

Consecințele publicării cheii

„Dușmanii” dvs., inteligența artificială conștientă de sine, teroriștii pot folosi cheia dvs. pentru a trimite linkuri către pagini care nu există către motoarele de căutare. Aceasta consumă cota dvs., împiedicându-vă să trimiteți în mod normal și, de asemenea, scade ponderea site-ului web din cauza trimiterii linkurilor moarte.

Note

  • submit_condition: acceptă două metode de a determina dacă se trimite un link, și anume count | period. Aplicați configurațiile count | period de mai jos
  • period: o perioadă de timp, în secunde, dacă diferența dintre ora de actualizare a articolului și timpul de rulare al acestui plugin este mai mică decât această valoare, linkul său va fi trimis. De exemplu: există două fișiere a.html și b.html, corespunzătoare https://yoursite.com/a.html și https://yoursite.com/b.html, diferența dintre ora lor de actualizare și timpul de rulare al acestui plugin este de 800 și 1000 de secunde (câmpul period este setat la 900), atunci https://yoursite.com/a.html va fi trimisă, https://yoursite.com/b.html nu va fi
  • google_proxy: proxy-ul http de sistem utilizat pentru trimiterea adresei URL către Google, formatul: http://proxyhost:port, modificați proxyhost și port; Hexo poate fi implementat în afara țării, puteți completa 0 pentru a nu utiliza. Când utilizați un software științific de internet, proxyhost este de obicei 127.0.0.1, port poate fi vizualizat în setările software-ului, de obicei 8080. În Windows 10, poate fi vizualizat în Setări->Proxy
  • replace: Unele linkuri pot fi generate incorect (cum ar fi numele de domeniu chinezesc, pagina principală fiind situată în http://cjh0613.github.io/blog etc.). Aceasta este o funcție simplă și directă de înlocuire, înlocuind șirul specificat în toate linkurile generate. În exemplu, http://cjh0613.github.io/blog este înlocuit cu https://cjh0613.com. Puteți, de asemenea, să înlocuiți numele de domeniu chinezesc cu numele de domeniu transcodificat.

Actualizat comentariile acestei secțiuni pe 12.07.2020, mulțumiri lui liuyib pentru sugestii Adăugat google_proxy pe 12.05.2021

După finalizarea configurației de mai sus, când executați instrucțiunea hexo generate în directorul rădăcină Hexo, se va genera un fișier .txt pentru a stoca linkurile care trebuie trimise.

Puteți deschide acest fișier pentru a verifica dacă linkul este corect, dacă este incorect, vă rugăm să vizitați _config.yml din hexo pentru configurare. De asemenea, puteți modifica manual acest fișier .txt înainte de a trimite linkul.

deploy

Dacă nu ați adăugat anterior o opțiune de configurare deploy:, lipiți direct următoarele în fișierul _config.yml al hexo, acoperind opțiunea de configurare deploy: implicită.

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

După finalizarea acestui pas, linkurile pot fi trimise automat către motoarele de căutare atunci când executați comanda hexo deploy.

  • Trebuie să executați comanda hexo deploy sau hexo d pentru a declanșa trimiterea, indiferent dacă ați mai folosit această comandă pentru implementare înainte.

Desigur, înainte de aceasta, trebuie să executați hexo generate pentru a genera cel mai recent fișier .txt pentru a stoca linkurile care trebuie trimise.

Dacă poate fi trimis cu succes, vă rugăm să mergeți la depozitul Github și dați un Star pentru a oferi suport, vă mulțumesc!

Dacă opțiunea de configurare deploy: a fost deja setată, lipirea directă a blocului de cod de mai sus va solicita conflict de configurare, doar adăugați-l sub opțiunea de configurare deploy: existentă. De exemplu:

deploy:
- type: git
  repo:
    coding: git@xxx
  branch: master

  #Adăugați opțiunea de configurare a acestui plugin:
- type: cjh_google_url_submitter
- type: cjh_bing_url_submitter
- type: cjh_baidu_url_submitter

Rețineți: există - înainte de fiecare type: de mai sus

Suport pentru integrare continuă

Această secțiune oferă referințe pentru metodele de implementare în care hexo este stocat într-un depozit public și compilat și publicat folosind CI (Integrare continuă, cum ar fi acțiunea Github, travis, coding-ci, netlify etc.).

Baidu și Bing pot utiliza variabile de mediu pentru a înregistra cheia, Google are alte soluții, vezi mai jos

Vă rugăm să rețineți că, dacă utilizați implementarea automată CI, trebuie să adăugați updated: în Front-matter (zona de deasupra fișierului .md, separată de ---, utilizată pentru a specifica variabile individuale de fișier) a fiecărei pagini, pentru a informa Hexo să corecteze „ora ultimei modificări a articolului”, de exemplu:

---
title: Hello World
date: 2013/7/13 20:46:25
updated: 2020-08-25 9:36:00
---

Acest lucru se datorează faptului că, atunci când fișierul este plasat pe computerul local, dacă nu există updated:, Hexo va citi atributele fișierului și va utiliza „ora ultimei modificări a fișierului” ca „ora ultimei modificări a articolului”, astfel încât să poată judeca și trimite în mod normal ultimele 10 linkuri; iar atunci când CI este implementat automat, deoarece toate resursele Hexo sunt clonate recent pe server, dacă nu adăugați updated:, Hexo va citi și atributele fișierului, dar în acest moment ora ultimei modificări din atribute este exact aceeași cu ora de clonare git, Hexo va primi „ora ultimei modificări a articolului” greșită și nu va putea judeca și trimite ultimele linkuri în mod normal.

  1. Vă rugăm să completați 0 în opțiunile de configurare baidu_token: și bing_token: din hexo_submit_urls_to_search_engine: mai întâi
  2. Setați variabilele de mediu BAIDU_TOKEN și BING_TOKEN, valoarea fiind tokenul obținut
  3. Dacă utilizați Github Action, trebuie să setați și variabilele de mediu în fișierul yml, există exemple mai jos
  4. hexo clean && hexo generate && hexo deploy și bucurați-vă de viață

Setați variabilele de mediu

Referință:

hexo_submit_urls_to_search_engine:
  submit_condition: count # Condiția ca linkul să fie trimis, valorile opționale: count | period Acum acceptă doar count
  count: 10 # Trimite ultimele 10 linkuri
  period: 900 # Trimite linkuri al căror timp de modificare este în 900 de secunde
  google: 1 # Dacă trimiteți către Google, valorile opționale: 1 | 0 (0: Nu; 1: Da)
  bing: 1 # Dacă trimiteți către bing, valorile opționale: 1 | 0 (0: Nu; 1: Da)
  baidu: 1 # Dacă trimiteți către baidu, valorile opționale: 1 | 0 (0: Nu; 1: Da)
  txt_path: submit_urls.txt ## Numele documentului text, linkurile care trebuie trimise vor fi stocate în acest document text
  baidu_host: https://en.cjh0613.com ## Domeniul înregistrat în platforma de webmasteri Baidu
  baidu_token: 0 ## Vă rugăm să rețineți că aceasta este cheia dvs., așa că nu o publicați direct într-un depozit public!
  bing_host: https://en.cjh0613.com ## Domeniul înregistrat în platforma de webmasteri bing
  bing_token: 0 ## Vă rugăm să rețineți că aceasta este cheia dvs., așa că nu o publicați direct într-un depozit public!
  google_host: https://en.cjh0613.com ## Domeniul înregistrat în platforma de webmasteri Google
  google_key_file: Project.json # Fișierul json care stochează cheia Google, plasat în directorul rădăcină al site-ului (același loc cu fișierul hexo _config.yml), vă rugăm să nu publicați conținutul fișierului json direct într-un depozit public!
  google_proxy: 0 # Proxy http de sistem utilizat pentru trimiterea adresei URL către Google, completați 0 pentru a nu utiliza
  replace: 0 # Dacă se înlocuiesc unele șiruri din link, valorile opționale: 1 | 0 (0: Nu; 1: Da)
  find_what: http://cjh0613.github.io/blog
  replace_with: https://cjh0613.com

Github Action, trebuie să setați și variabilele de mediu în fișierul yml:

- name: xxxx # Completați ceva la întâmplare
  env:
    BAIDU_TOKEN: ${{ secrets.BAIDU_TOKEN }} # Acordați atenție aici, restul este irelevant
    BING_TOKEN: ${{ secrets.BING_TOKEN }} # Acordați atenție aici, restul este irelevant
  run: |
    npm i -g hexo-cli # Instalați hexo
    npm i
    ……
    hexo deploy    

Cât despre trimiterea linkurilor către Google, există atât de multe informații în fișierul cheie json, copierea și lipirea pentru a seta variabile de mediu… este prea greu. Am pus fișierul cheie json într-un depozit privat, apoi îl clonez și îl copiez în directorul rădăcină.

Actualizare plugin

Notificare de actualizare a pluginului

După instalarea acestui plugin, vă rugăm să urmăriți acest proiect pe Github pentru a primi notificări de actualizare a pluginului (Selectați doar Releases pentru a primi notificări de upgrade, dacă selectați Watching, veți primi și Issues, Pull requests etc., trimise prin e-mail)

Selectați doar Releases

Operație de actualizare

Vă rugăm să rulați următoarele în directorul rădăcină hexo:

Desigur, utilizarea cnpm în regiunea Chinei Mari este mai rapidă pentru descărcare

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

Anterior am dat o altă comandă: npm update --save hexo-submit-urls-to-search-engine, dar am întâmpinat probleme atunci când am testat-o.

Actualizare yarn:

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

Actualizare incompatibilă

Avertisment

Uneori, actualizarea pluginului nu este compatibilă descendent și este posibil să trebuiască să modificați opțiunea de configurare referitoare la acest plugin din _config.yml al hexo sau să faceți alte modificări. Această situație apare de obicei atunci când numărul din fața primei zecimale din numărul versiunii crește. Cum ar fi trecerea de la ^1.0.0 la ^2.0.0.

Actualizarea de la 1.x.x la 2.x.x:

Trebuie să adăugați următoarele trei opțiuni de configurare la opțiunea de configurare hexo_submit_urls_to_search_engine::

  replace: 0  # Dacă se înlocuiesc unele șiruri din link, valorile opționale: 1 | 0 (0: Nu; 1: Da)
  find_what: http://cjh0613.github.io/blog
  replace_with: https://cjh0613.com

Bine, am descoperit că această actualizare este compatibilă descendent, chiar dacă nu există aceste trei opțiuni de configurare, nu va apărea o eroare…

Informații returnate

Informații despre trimiterea cu succes

Bing

Răspuns Bing:  { d: null }

Google

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

Altele

Alte returnări se pot referi la documentația lor oficială, dar, în general, înțelegeți motivul prin traducerea returnării.

Uneori se datorează faptului că motoarele de căutare permit doar trimiterea unui număr fix de linkuri pe zi. Vă puteți conecta la site-urile lor oficiale pentru a le verifica. După ce am schimbat domeniul site-ului meu cjh0613.github.io în cjh0613.com, cota Bing era de 10, după ce am trimis continuu timp de 10 zile, cota a crescut brusc de la 10 la 10.000.

Dacă unele linkuri nu au fost trimise, vă rugăm să le gestionați manual: modificați textul txt care stochează linkul de trimitere în funcție de feedback (în general, eliminați linkurile care au fost trimise cu succes), apoi rulați doar hexo deploy pentru a retrimite, nu este necesară regenerarea site-ului.

Dacă doriți să trimiteți linkuri către motoarele de căutare în fiecare zi, puteți rula hexo d în fiecare zi, sau puteți seta Github Action să ruleze hexo g && hexo d în fiecare zi, fără a fi nevoie să reinventați roata.

Verificați rezultatele

Verificați indexul

Pentru a verifica indexul acestui site, de exemplu, deschideți oricare dintre motoarele de căutare, introduceți site:domeniu, aici este:

site:cjh0613.github.io

Căutați.

Timpul necesar pentru ca volumul indexului unui site nou să crească de la 0 la 1 poate fi foarte lung, poate o lună… vă rugăm să aveți răbdare

Viteza reală de indexare este, de asemenea, legată de alți factori, există multe informații SEO online, dar toate se bazează pe explicația oficială.

Verificați istoricul trimiterilor

Bing

Vă puteți conecta la noua platformă de webmasteri Bing pentru a verifica o listă detaliată a linkurilor trimise (actualizată în timp real):

https://www.bing.com/webmasters/submiturl?siteUrl=linkul_site-ului_dvs.

Înregistrarea trimiterilor Bing și verificarea cotei rămase

Google

Puteți verifica doar numărul cumulat de linkuri trimise și procentul de trimiteri nereușite (actualizat în timp real) într-o perioadă de timp (maximum 30 de zile) în tabelul „Erori” de mai jos, deși oferă o diagramă cu datele trimise zilnic, dar este ca și cum nu ar fi oferit…

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

Verificarea numărului de linkuri trimise de Google

Referințele mele pentru dezvoltarea acestui plugin

Vă rugăm să consultați documentația veche