Avui us porto una eina que us permetrà portar les vostres proves d’URL a Google Search Console al següent nivell. Entendrem com un script que fa proxy invers i/o redireccions ens ajudarà a provar URLs de qualsevol lloc web, i també us donarà un avantatge competitiu en analitzar les nostres estratègies SEO.
Se’m va ocórrer preparar-ho gràcies a tota la batalla de Reddit contra els motors de cerca que no els paguen i estan bloquejats, com Bing.
Comencem!
Per a què serveix aquest script?
Aquest script està dissenyat per funcionar a Cloudflare Workers, tot i que es pot utilitzar en qualsevol entorn compatible amb JavaScript i la idea de tenir un domini a la vostra completa disposició.
Podeu trobar tot l’script a GitHub. Qualsevol feedback o suggeriment de millora és benvingut
El seu propòsit principal és actuar com a proxy invers i/o redireccionador dinàmic, permetent-vos simular diferents dispositius i agents d’usuari quan accediu a URLs, tant pròpies com òbviament les dels nostres competidors o altres llocs web.
Per què és interessant? Perquè us permet, entre altres coses:
- Comprovar si un lloc web està fent cloaking (mostrant contingut diferent a bots i usuaris).
- Verificar si s’estan amagant elements específicament per a Googlebot (per exemple, el banner de cookies)
- Realitzar anàlisis de competència de manera més efectiva.
- Provar com es veu i es comporta un lloc web de tercers des de diferents dispositius i navegadors per a Googlebot.
Aquest script crea en un domini que tenim, una infraestructura totalment dinàmica per provar a GSC qualsevol URL existent (o no existent!) a tot internet
Anàlisi detallada del funcionament de l’script
Analitzem les parts més importants de l’script:
1. Gestió de peticions
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})
Aquest és el punt d’entrada de l’script. Escolta totes les peticions entrants i les passa a la funció handleRequest
.
2. Funció principal: handleRequest
Aquesta funció és el cor de l’script. Fa el següent:
- Serveix un fitxer
robots.txt
- Gestiona les peticions al directori
/proxy
. - Comprova els paràmetres necessaris (URL, dispositiu, redirecció).
- Fa la petició al lloc de destí amb l’agent d’usuari apropiat.
- Modifica les respostes HTML per reescriure les URLs relatives. Això es fa perquè les URLs relatives no contenen el domini i d’altra manera resultarien en un error en carregar, cridant l’arrel + path del nostre domini.
3. Simulació de dispositius
L’script pot simular diferents dispositius canviant l’User-Agent:
switch(device) {
case 'desktop':
// ...
case 'windows':
// ...
case 'android':
// ...
case 'iphone':
// ...
default:
// ...
}
Desktop i mobile (per defecte) utilitzen l’user-agent de Googlebot, la resta van sense Googlebot.
Això és crucial per provar com es comporta un lloc en diferents dispositius i plataformes.
4. Reescriptura d’URLs
La funció rewriteUrls
és essencial per assegurar que tots els recursos (imatges, CSS, JavaScript) es carreguin correctament a través del proxy:
function rewriteUrls(html, baseUrl) {
// ...
}
Aquesta funció modifica totes les URLs relatives en l’HTML perquè apuntin al proxy, mantenint la funcionalitat del lloc intacta.
En Natzir Turrado em va enviar aquest article d’Oliver H.G. Mason i em vaig adonar que les redireccions eren una millor manera de fer aquest exercici, ja que amb el proxy invers és probable que alguns llocs web especialment grans ens bloquegin, a més el tema de les URLs relatives a escala és bastant complex i propens a no capturar tots els casos d’ús, tot i que l’script és bastant flexible amb això, he vist que hi ha casos que no corregeix bé, i en vista que la redirecció funciona perfectament ja que Google és qui fa la petició al destí, no cal preocupar-se més.
Com desplegar l’script a Cloudflare Workers
- Inicia sessió al teu compte de Cloudflare.
- Ves a la secció “Workers”.
- Clica a “Create a Worker”.
- Copia i enganxa l’script complet a l’editor.
- Clica a “Save and Deploy”.
Finalment, hauràs de verificar aquesta propietat a Google Search Console per tenir-hi accés complet. La manera més fàcil serà dins del domini que idealment tens a Cloudflare, utilitzar un registre TXT per validar-lo.
Un cop desplegat, tindràs una URL única per al teu Worker. Utilitza-la com a base per a les teves peticions de proxy.
Per poder utilitzar això, hauràs de tenir accés complet al domini o subdomini que utilitzis, per això no podràs utilitzar-ho en dominis de Workers, sinó que hauràs d’utilitzar-ne un de propi.
Important: Tot això és gratuït, excepte el domini que hauràs de comprar, o si utilitzes el subdomini d’un que ja tinguis, llavors serà gratuït. Cloudflare Workers és gratuït fins a 100.000 peticions al dia.
Casos d’ús pràctics
Aquesta solució funciona per a qualsevol URL i domini, és a dir, no té límits.
Alguns casos d’ús, veureu que he utilitzat un domini que tenia per allà anomenat aimarketshare.org, aquí podeu veure’l funcionant en un cas real: https://aimarketshare.org/proxy?device=desktop&redirect=true&url=https://marca.com/ o sense redirecció https://aimarketshare.org/proxy?device=desktop&url=https://marca.com:
1. Detecció de cloaking en un competidor
Per comprovar si un lloc està mostrant contingut diferent als bots, inspeccionaríeu una URL així a GSC
https://your-domain.com/proxy?url=https://suspicious-site.com/suspicious-page&device=desktop
Compareu això amb el que veieu quan accediu al lloc directament.
2. Verificació d’elements ocults per a Googlebot
Per veure si hi ha elements que només s’amaguen de Googlebot:
https://your-domain.com/proxy?url=https://site-to-verify.com/page-1&device=mobile
O feu el mateix però amb el mètode de redirecció. Recomano sempre utilitzar aquest mètode per obtenir resultats més fiables, és a dir, sempre hauríeu d’afegir redirect=true a la petició.
https://your-domain.com/proxy?url=https://site-with-redirects.com&redirect=true
3. Anàlisi de competència
Per analitzar com es veu el lloc d’un competidor en diferents dispositius:
https://your-domain.com/proxy?url=https://competitor.com/page-i-like&redirect=true&device=iphone
Conclusió
Aquest script pot ser ara una eina interessant en el vostre arsenal com a SEO o desenvolupador web. Us permet obtenir informació valuosa sobre com es comporten els llocs web dels competidors en diferents escenaris als ulls de Google, la qual cosa pot ser crucial per optimitzar els vostres propis llocs i entendre millor les estratègies més amagades dels vostres competidors.
Recordeu sempre utilitzar aquesta eina de manera ètica i responsable.
Bones proves!