Bevezető
A hexo-submit-urls-to-search-engine
bővítmény használatával a Hexo blog új linkjei proaktívan elküldhetők a Google, a Bing és a Baidu keresőmotorok webmesteri platformjaira, ezzel javítva a webhelyek indexelésének minőségét és sebességét. Ez a bővítmény lehetővé teszi, hogy természetes, növényi eredetű indexelési kérelmeket küldjön a főbb keresőmotoroknak, egyszerre és véglegesen.
Például, az egyik cikkem néha 5 perccel a megjelenés után már megtalálható a Bingben (ez a legjobb eset, és nem garantált a hosszú távú stabilitás). Látod, ez a hexo-submit-urls-to-search-engine
ereje. A Baidu és a Google egy kicsit lassabb.
Ez a három nagy keresőmotor a globális keresőmotorpiac 97%-át fedi le (beleértve a meta-keresőmotorokat is, mint a Dogpile, Duckduckgo stb.; valamint a Bing indexet használó Yahoo, Ecosia stb.).
Figyelmeztetés
A nem szakszerű használatú, hasonló push kódok veszélyes mellékhatásokat okozhatnak, beleértve, de nem kizárólagosan: biztonsági hiányosságokat, redundáns kódokat, a kerék újrafeltalálását, dokumentáció rágását, egzisztenciális válságot, depressziót, fejfájást, sőt halált, lélekvesztést és megsemmisülést.
A hivatalos QQ-csoport és a Telegram-csoport szolgáltatása megszűnt. Kérjük, látogasson el a Github issue oldalára a megbeszélésekhez.
Műveleti lépések
Gyors kezdés:
- Szerezze be az egyes webmesteri platformok kulcsait
- Telepítse és konfigurálja a
hexo-submit-urls-to-search-engine
bővítményt hexo clean && hexo g && hexo d
, és ellenőrizze a push eredményeket- Ha a push sikeres volt, látogasson el a Github címre , és kattintson a Star gombra a támogatáshoz
- Továbbá watcholja a Github projektet a bővítmény frissítési értesítéseihez
- Ezenkívül kattintson ide, hogy adományozzon
A webmesteri platform kulcsainak beszerzése
Az ebben a részben “feljegyzett” kulcsokat a hexo _config.yml
fájljába kell beírni, a formátumot a későbbiekben ismertetjük.
A webhelyek ellenőrzéséről: egyes Hexo témák támogatják a webmesteri platformok HTML-ellenőrző címkéinek hozzáadását, a megfelelő beállítások kitöltése után a hexo g && hexo d
paranccsal ellenőrizhetők. Az általános részletes lépésekhez kérjük, hogy google-ben keressen rá: hexo webmesteri platform ellenőrzése
Baidu
A Baidu egy kínai keresőmotor. Hacsak nem végez összetett webhelyregisztrációs eljárásokat a kínai hatóságoknál, a webhelyeket nehéz indexelni.
Ha webhelye szervere Kínán kívül található, akkor gyakorlatilag lehetetlen webhelyregisztrációs eljárásokat végrehajtani.
Kérjük, tekintse meg a régi dokumentációt, hogy megtudja, hogyan kell linkeket beküldeni a Baidu-ba
Bing
A Bing webmesteri platformnak van új és régi verziója.
- Regisztráljon és jelentkezzen be a Bing új webmesteri platformjára: Bing Webmaster Tools
- Adjon hozzá webhelyet
- Lépjen a webhely kezelési oldalára, a beállításokhoz, az API-hozzáféréshez, az API-kulcshoz, jegyezze fel az API-kulcsot
(A Bing webmesteri platformja a közelmúltban frissült, a szerver és az elrendezés instabil, ha a token nem jeleníthető meg, próbálja újra egy idő után) Most már frissítve van az új webmesteri platformra.
Ez egy sematikus ábra a Bing régi webmesteri platformjáról:
Ha a szervere Kínában található, kérjük, vegye figyelembe, hogy a szerverének hozzá kell férnie a nemzetközi internethez, hogy linkeket tudjon küldeni a Google-nak.
A Google webmesteri platformjának is van új és régi verziója, de a kettő viszonya nem olyan jó, mint a Bingé. Ezenkívül az általunk használt Google Indexing API nem a webmesteri platform által biztosított, hanem a Google fejlesztői platformhoz tartozik. A folyamat során a hivatalos dokumentációt (amely Kínában elérhető) referenciaként használhatja a konfigurációhoz.
Használati lépések:
- Nyissa meg a hivatalos dokumentációt, és az utasításokat követve hozzon létre projektet és szolgáltatásfiókot. Csak a webhelyen kell konfigurációs műveleteket végrehajtania az utasításoknak megfelelően, nem kell elvégeznie a hozzáférési tokenek beszerzésének későbbi műveleteit.
Ha csak a Google hivatalos dokumentációja szerint ad hozzá egy engedélyezési e-mailt a Google új “Search Console”-jában, akkor is megjelenik egy “Nincs engedély” üzenet. Kérjük, lépjen a régi webhely webmesteri eszközeire, kattintson a webhelyére, és adja hozzá az e-mail címet.Most már közvetlenül az új webmesteri platformon is elküldheti.- Helyezze a beszerzett JSON-kulcsfájlt a hexo gyökérkönyvtárába (ugyanabba a helyre, mint a hexo _config.yml fájlt)
A Google régi webhely webmesteri eszközei:
Ezenkívül a hivatalos dokumentáció a következő üzenetet tartalmazza. Kérjük, a tényleges helyzetnek megfelelően döntse el, hogy engedélyezi-e a linkek Google-ba küldését:
Jelenleg az Indexing API csak a JobPosting
vagy BroadcastEvent
(a VideoObject
-be ágyazva) tartalmú weboldalak feltérképezésére használható. A sok rövid élettartamú oldalt (például álláshirdetéseket vagy élő videókat) tartalmazó webhelyek esetében az Indexing API a különböző tartalmak frissítéseinek külön-külön elküldésével a keresési eredményekben lévő tartalmat naprakészen tartja.
Indexing API rövid útmutató | Google Search Central | Google for Developers
Én legalábbis beküldtem. Honnan tudja a Google, hogy a weboldala nem tartalmaz
álláshirdetést vagy élő videót
, ha nem vizsgálja át a webhelyet? És ha már átvizsgálta, mi az oka annak, hogy a már feltérképezett információkat elpazarolja, ahelyett, hogy használná? Ha pedig használja, elértük a célunkat. A valós használat során úgy tűnik, hogy a Google nem is csökkentette a rangsorolást emiatt. Talán a Google elfelejtette frissíteni a dokumentációt? Én jelenleg két súlyos hibát találtam ebben a dokumentumban, amelyeket évek óta nem javítottak ki.
A hexo konfigurálása
A bővítmény telepítése
Kérjük, futtassa a következő parancsot a hexo gyökérkönyvtárában:
Természetesen a
cnpm
segítségével a letöltési sebesség gyorsabb Nagy-Kína területén
npm install --save hexo-submit-urls-to-search-engine
Ez a bővítmény támogatja a yarn
telepítést is:
yarn add hexo-submit-urls-to-search-engine
A hexo _config.yml szerkesztése
hexo-submit-urls-to-search-engine
Konfigurálja a hexo-submit-urls-to-search-engine
bővítményt, másolja az alábbiakat a hexo _config.yml
fájljába.
Tipp
Természetesen használhat környezeti változókat a kulcsok rögzítéséhez, így még akkor sem szivárognak ki a kulcsok, ha a forráskód nyilvános tárolóban van.
hexo_submit_urls_to_search_engine:
submit_condition: count # A linkek elküldésének feltétele, választható értékek: count | period, jelenleg csak a count támogatott
count: 10 # A 10 legújabb link elküldése
period: 900 # A 900 másodpercen belüli módosítási idejű linkek elküldése
google: 0 # Elküldés a Google-ba, választható értékek: 1 | 0 (0: Nem; 1: Igen)
bing: 1 # Elküldés a Bingbe, választható értékek: 1 | 0 (0: Nem; 1: Igen)
baidu: 1 # Elküldés a Baiduba, választható értékek: 1 | 0 (0: Nem; 1: Igen)
txt_path: submit_urls.txt ## A szöveges dokumentum neve, az elküldendő linkek ebbe a szöveges dokumentumba lesznek elmentve
baidu_host: https://cjh0613.github.io ## A Baidu webmesteri platformon regisztrált domain
baidu_token: Kérjük, kövesse a dokumentációban található utasításokat a beszerzéshez ## Kérjük, vegye figyelembe, hogy ez az Ön kulcsa, ezért ne tegye közzé közvetlenül egy nyilvános tárolóban!
bing_host: https://cjh0613.github.io ## A Bing webmesteri platformon regisztrált domain
bing_enable_indexnow: false # IndexNow használata a linkek Bingnek való elküldéséhez: true (Igen) | false (Nem). Csak a 2.1.1-es és újabb verziókban lehet ezt a funkciót engedélyezni.
bing_token: Kérjük, kövesse a dokumentációban található utasításokat a beszerzéshez ## Kérjük, vegye figyelembe, hogy ez az Ön kulcsa, ezért ne tegye közzé közvetlenül egy nyilvános tárolóban!
google_host: https://cjh0613.github.io ## A Google webmesteri platformon regisztrált domain
google_key_file: Project.json # A Google kulcsot tartalmazó JSON-fájl, amely a webhely gyökérkönyvtárában található (ugyanabban a helyen, mint a hexo _config.yml fájl), kérjük, ne tegye közzé a JSON-fájl tartalmát közvetlenül egy nyilvános tárolóban!
google_proxy: http://127.0.0.1:8080 # A Google-nak küldött URL-ekhez használt rendszer HTTP-proxy, a 0 kitöltése nem használja
replace: 0 # Lecserélje-e a linkek egy részét, választható értékek: 1 | 0 (0: Nem; 1: Igen)
find_what: http://cjh0613.github.io/blog
replace_with: https://cjh0613.com
A kulcs nyilvánosságra hozatalának következményei
Az Ön “ellenségei”, öntudatos mesterséges intelligenciája vagy terroristák használhatják a kulcsát nem létező oldalakra mutató linkek keresőmotorokba küldéséhez. Ez a keret felhasználásával megakadályozhatja, hogy normálisan küldjön push üzeneteket, valamint a halott linkek elküldése miatt a webhely súlya is csökkenhet.
Megjegyzések
- submit_condition: Kétféle módszert támogat a linkek elküldésének meghatározására, nevezetesen a count | period. A count | period konfigurációs elemeket alkalmazzák külön-külön.
- period: egy időszak, másodpercben mérve. Ha a cikk frissítési ideje és a bővítmény futási ideje közötti különbség kisebb, mint ez az érték, akkor a linkje elküldésre kerül. Például: van két fájl, az a.html és a b.html, amelyek megfelelnek a
https://yoursite.com/a.html
és ahttps://yoursite.com/b.html
címeknek, a frissítési idejük és a bővítmény futási ideje közötti különbség pedig 800 és 1000 másodperc (a period mező 900-ra van állítva), akkor ahttps://yoursite.com/a.html
elküldésre kerül, ahttps://yoursite.com/b.html
nem. - google_proxy: A Google-nak küldött URL-ekhez használt rendszer HTTP-proxy. Formátuma:
http://proxyhost:port
. Módosítsa aproxyhost
-ot és aport
-ot. A Hexo külföldön történő telepítésekor a 0-t kitöltheti a használat mellőzéséhez. Tudományos internetes szoftverek használatakor aproxyhost
általában127.0.0.1
, aport
pedig a szoftver beállításaiban tekinthető meg, általában8080
. A Win10 rendszerben a Beállítások->Proxy alatt tekintheti meg. - replace: előfordulhat, hogy egyes linkek helytelenül generálódnak (például kínai domainnevek, a kezdőlap a
http://cjh0613.github.io/blog
címen található stb.). Ez egy egyszerű és nyers cserefunkció, amely a generált összes linkben egy adott karakterláncot helyettesít. A példában ahttp://cjh0613.github.io/blog
cím ahttps://cjh0613.com
címmel kerül helyettesítésre. A kínai domainnevek is helyettesíthetők a kódolt domainnevekkel.
2020.7.12. Frissítve ez a megjegyzés, köszönjük liuyib javaslatát 2021.5.12. A google_proxy hozzáadva
A fenti konfiguráció elvégzése után a .txt
fájl a Hexo gyökérkönyvtárában a hexo generate
parancs futtatásakor jön létre, hogy tárolja az elküldendő linkeket.
Megnyithatja ezt a fájlt, hogy ellenőrizze, hogy a linkek helyesek-e. Ha nem, látogasson el a hexo _config.yml
fájljába a konfiguráláshoz. Manuálisan is módosíthatja ezt a .txt
fájlt, mielőtt elküldi a linkeket.
deploy
Ha korábban nem adott hozzá deploy:
konfigurációs elemet, másolja az alábbiakat közvetlenül a hexo _config.yml
fájljába, és írja felül az alapértelmezett deploy:
konfigurációs elemet.
deploy:
- type: cjh_google_url_submitter
- type: cjh_bing_url_submitter
- type: cjh_baidu_url_submitter
E lépés befejezése után a hexo deploy
parancs futtatásakor a linkek automatikusan elküldésre kerülnek a keresőmotorokba.
- A push aktiválásához futtatnia kell a
hexo deploy
vagy ahexo d
parancsot, függetlenül attól, hogy korábban használt-e ilyen parancsot a telepítéshez.
Természetesen korábban futtatnia kell a hexo generate
parancsot a legújabb .txt fájl létrehozásához, amely tárolja az elküldendő linkeket.
Ha a push sikeres volt, kérjük, látogasson el a Github tárolóba, és támogassa a Starral, köszönöm!
Ha a deploy:
konfigurációs elemet már beállította, a fenti kódblokk közvetlen beillesztése konfigurációs ütközést fog eredményezni, egyszerűen adja hozzá a meglévő deploy:
konfigurációs elemhez. Például:
deploy:
- type: git
repo:
coding: git@xxx
branch: master
#Adja hozzá ennek a bővítménynek a konfigurációs elemeit:
- type: cjh_google_url_submitter
- type: cjh_bing_url_submitter
- type: cjh_baidu_url_submitter
Megjegyzés: a fenti type:
előtt mindenhol van egy -
Folyamatos integráció támogatása
Ez a szakasz a Hexo nyilvános tárolókban való tárolására, valamint a CI (folyamatos integráció, például Github action, travis, coding-ci, netlify stb.) használatával történő fordítással és kiadással kapcsolatos telepítési módszerekre ad referenciát.
A Baidu és a Bing a környezeti változókkal rögzítheti a kulcsokat, a Google-nak pedig más megoldásai vannak, lásd alább.
Kérjük, vegye figyelembe, hogy ha CI-t használ az automatikus telepítéshez, akkor minden oldal Front-matterében (a .md
fájl legfelső részén, amelyet ---
választ el, és amely az egyes fájlok változóinak megadására szolgál) hozzá kell adnia az updated:
elemet, hogy a Hexo kijavítsa a “cikk utolsó módosítási idejét”. Például:
---
title: Hello World
date: 2013/7/13 20:46:25
updated: 2020-08-25 9:36:00
---
Ennek oka, hogy amikor a fájlok a helyi számítógépen vannak, ha nincs updated:
, a Hexo beolvassa a fájl tulajdonságait, és a “fájl utolsó módosítási idejét” használja a “cikk utolsó módosítási idejeként”, és normálisan képes megítélni és elküldeni a 10 legújabb linket. A CI automatikus telepítésekor, mivel a Hexo erőforrásai csak most vannak klónozva a szerverre, ha nem ad hozzá updated:
, a Hexo ugyanúgy beolvassa a fájl tulajdonságait, de ebben az esetben a tulajdonságokban szereplő utolsó módosítási idő teljesen megegyezik a git clone idejével, így a Hexo helytelen “cikk utolsó módosítási időt” kap, és nem tudja megfelelően megítélni és elküldeni a legújabb linkeket.
- Először töltse ki a
0
-t ahexo_submit_urls_to_search_engine:
konfigurációs elembaidu_token:
ésbing_token:
helyére. - Állítson be környezeti változókat:
BAIDU_TOKEN
,BING_TOKEN
, ezeknek az értéke a már megszerzetttoken
legyen. - Ha Github Actiont használ, akkor a
yml
fájlban is be kell állítania a környezeti változókat, alább láthat egy példát. hexo clean && hexo generate && hexo deploy
, és élvezze az életet
Referencia:
hexo_submit_urls_to_search_engine:
submit_condition: count # A linkek elküldésének feltétele, választható értékek: count | period, jelenleg csak a count támogatott
count: 10 # A 10 legújabb link elküldése
period: 900 # A 900 másodpercen belüli módosítási idejű linkek elküldése
google: 1 # Elküldés a Google-ba, választható értékek: 1 | 0 (0: Nem; 1: Igen)
bing: 1 # Elküldés a Bingbe, választható értékek: 1 | 0 (0: Nem; 1: Igen)
baidu: 1 # Elküldés a Baiduba, választható értékek: 1 | 0 (0: Nem; 1: Igen)
txt_path: submit_urls.txt ## A szöveges dokumentum neve, az elküldendő linkek ebbe a szöveges dokumentumba lesznek elmentve
baidu_host: https://en.cjh0613.com ## A Baidu webmesteri platformon regisztrált domain
baidu_token: 0 ## Kérjük, vegye figyelembe, hogy ez az Ön kulcsa, ezért ne tegye közzé közvetlenül egy nyilvános tárolóban!
bing_host: https://en.cjh0613.com ## A Bing webmesteri platformon regisztrált domain
bing_token: 0 ## Kérjük, vegye figyelembe, hogy ez az Ön kulcsa, ezért ne tegye közzé közvetlenül egy nyilvános tárolóban!
google_host: https://en.cjh0613.com ## A Google webmesteri platformon regisztrált domain
google_key_file: Project.json # A Google kulcsot tartalmazó JSON-fájl, amely a webhely gyökérkönyvtárában található (ugyanabban a helyen, mint a hexo _config.yml fájl), kérjük, ne tegye közzé a JSON-fájl tartalmát közvetlenül egy nyilvános tárolóban!
google_proxy: 0 # A Google-nak küldött URL-ekhez használt rendszer HTTP-proxy, a 0 kitöltése nem használja
replace: 0 # Lecserélje-e a linkek egy részét, választható értékek: 1 | 0 (0: Nem; 1: Igen)
find_what: http://cjh0613.github.io/blog
replace_with: https://cjh0613.com
Github Action, a yml
fájlban is be kell állítani a környezeti változókat:
- name: xxxx #Bármit beírhat
env:
BAIDU_TOKEN: ${{ secrets.BAIDU_TOKEN }} # Figyeljen ide, a többi csak úszik a felszínen
BING_TOKEN: ${{ secrets.BING_TOKEN }} # Figyeljen ide, a többi csak úszik a felszínen
run: |
npm i -g hexo-cli # A hexo telepítése
npm i
……
hexo deploy
A Google-ba való linkküldést illetően a json
kulcsfájlban olyan sok információ van, hogy a másolás és beillesztés a környezeti változók beállításához… túl sok gondot okoz. A json
kulcsfájlt egy privát tárolóba helyezem, majd klónozom, és a gyökérkönyvtárba másolom.
Bővítményfrissítés
Bővítményfrissítési emlékeztető
A bővítmény telepítése után watcholja ezt a projektet a Githubon , hogy frissítési emlékeztetőket kapjon (válassza a Releases only lehetőséget csak a frissítési emlékeztetők fogadásához, a Watching kiválasztása emellett Issues, Pull requests stb. üzeneteket is küld, e-mailben).
Frissítési műveletek
Kérjük, futtassa a következő parancsot a hexo gyökérkönyvtárában:
Természetesen a
cnpm
segítségével a letöltési sebesség gyorsabb Nagy-Kína területén
npm install --save hexo-submit-urls-to-search-engine@verzió
Korábban egy másik parancsot adtam meg: npm update --save hexo-submit-urls-to-search-engine
, de a teszt során probléma merült fel.
yarn
frissítés:
yarn add hexo-submit-urls-to-search-engine@verzió
Nem kompatibilis frissítés
Figyelmeztetés
Néha a bővítményfrissítések nem visszafelé kompatibilisek, és szükségessé tehetik, hogy módosítsa a hexo _config.yml
fájljában a bővítményhez kapcsolódó konfigurációs elemeket, vagy egyéb módosításokat hajtson végre.
Ez általában a verziószám első tizedesvesszője előtti számának növekedésével jár. Mint például a ^1.0.0
frissítése ^2.0.0
-ra.
1.x.x frissítése 2.x.x-re:
Hozzá kell adnia a következő három konfigurációs elemet a hexo_submit_urls_to_search_engine:
konfigurációs elemhez:
replace: 0 # Lecserélje-e a linkek egy részét, választható értékek: 1 | 0 (0: Nem; 1: Igen)
find_what: http://cjh0613.github.io/blog
replace_with: https://cjh0613.com
Oké, rájöttem, hogy ez a frissítés visszafelé kompatibilis, még akkor sem okoz hibát, ha ez a három konfigurációs elem nem szerepel…
Visszaadott információk
Sikeres push üzenetek
Bing
Bing response: { d: null }
Google response: { urlNotificationMetadata:
{ url:
'https://cjh0613.github.io',
latestUpdate:
{ url:
'https://cjh0613.github.io',
type: 'URL_UPDATED',
notifyTime: '2020-06-12T05:37:25.701779228Z' } } }
Egyéb
Az egyéb visszaküldött információkat a hivatalos dokumentációban találhatja meg, de általában lefordítva is kiderül az ok.
Néha azért van, mert a keresőmotorok naponta csak bizonyos számú link elküldését engedélyezik. Ellenőrizze a hivatalos webhelyeiken. Miután a webhelyem domainnevét, a cjh0613.github.io
-t cjh0613.com-ra változtattam, a Bing kvótája 10 volt, 10 napos folyamatos push után a kvóta hirtelen 10-ről 10000-re változott.
Ha egyes linkek push üzenete sikertelen volt, kérjük, manuálisan kezelje őket: a visszajelzés alapján módosítsa az elküldött linkeket tároló txt fájlt (általában távolítsa el a sikeresen elküldött linkeket), majd csak a hexo deploy
parancsot futtatva küldje el újra, nem kell újragenerálnia a webhelyet.
Ha naponta szeretne linkeket küldeni a keresőmotorokba, egyszerűen futtassa a hexo d
parancsot naponta, vagy beállíthatja a Github Actiont is a hexo g && hexo d
napi futtatására, nem kell újra feltalálnia a kereket.
Eredmények lekérdezése
Index lekérdezése
A webhely indexének lekérdezéséhez nyissa meg bármelyik keresőmotort, és írja be a site:domain
kifejezést, ez itt:
site:cjh0613.github.io
Majd keressen.
Egy új webhely indexének 0→1-ről 1-re való növekedése hosszú időt vehet igénybe, akár egy hónapot is… Kérjük, legyen türelemmel.
A tényleges indexelési sebesség más tényezőktől is függ, sok SEO-anyag található a neten, de ezek mind a hivatalos magyarázatokon alapulnak.
Push napló lekérdezése
Bing
Bejelentkezhet a Bing új webmesteri platformjára, hogy megtekintse a részletes push linkek listáját (valós időben frissítve):
https://www.bing.com/webmasters/submiturl?siteUrl=webhelye linkje
A Google-ban csak a következő címen található “Hibák” táblázatban tekinthető meg egy időszakra (legfeljebb 30 napra) a felhalmozott elküldött linkek száma és a sikertelen push-ok aránya (valós időben frissítve), bár megad egy napi adatkép-diagramot, de ez nem sokat segít…
https://console.developers.google.com/apis/api/indexing.googleapis.com/metrics?project=