RapidWeaver e canonizzazione con htaccess

canonicalization con htaccessIn realtà avrei dovuto parlare di “canonicalizzazione” o magari “canonicalizzation”, ma mi intrigo anche solo a pronunciarle, figuriamoci a scriverle. Ma andiamo avanti.
Come qualcuno sa, e se non lo sa lo saprà da oggi, per questo blog utilizzo un software non troppo conosciuto ai più: RapidWeaver, un prodotto realizzato e distribuito dalla software house RealMac che tra l’altro vanta una community che tiene discretamente animato il forum di supporto; tra sviluppatori di nuovi temi, snippet e plugin c’è da dire non mancano le occasioni per conoscere ogni giorno qualcosa di nuovo su questo software.
Non ci posso fare niente: i vari Wordpress, Movable Type o Typepad, pur offrendo sicuramente una maggior versatilità, non sono mai entrati nelle mie grazie anche se il primo dei tre viene utilizzato con ottimi risultati da moltissimi blogger. Anche su Drink a Drink utilizziamo Wordpress.
L’unica cosa della quale forse sento la mancanza con Rapidweaver è un po’ di cura in più per quello che è l’aspetto relativo ai motori di ricerca, o quantomeno spesso manca un po’ di attenzione a quella certa “correttezza formale” apprezzata dai seo e dai puristi del W3C: qualche piccolo problemino infatti può venire fuori, e allora ci si deve un po’ arrangiare con le proprie forze.
Io ad esempio mi sono risolto una magagna utilizzando un file htaccess.

Veniamo alla descrizione del problema.
RapideWeaver genera un file index.html o .php che è la home page del sito o blog che stiamo andando a generare.
Fin qui niente di strano, lo fanno tutti i cms anche se poi il file in questione potrà chiamarsi default.asp, index.php, etc. in base al software e al linguaggio che stiamo utilizzando.
Il problema invece si fa un po’ più spinoso per quanto riguarda la gestione del linking interno tra le pagine che compongono il sito.
Ipotizziamo di avere creato il sito “Alessio For President” raggiungibile alla url “http://www.alessio-for-president.com”, composto da una home page e da:

  • una pagina “chi sono” (http://www.alessio-for-president.com/chi-sono.html),
  • una pagina “perché eleggermi” (http://www.alessio-for-president.com/perche-eleggermi.html),
  • e una pagina “contatti” (http://www.alessio-for-president.com/contatti.html).

Naturalmente ogni pagina secondaria sopra elencata dovrà contenere un link verso la home page del sito, in modo da offrire all’utente una struttura informativa ben chiara e permettergli la navigazione completa del sito.
Ora il fatto è che RapidWeaver genererà verso la home dei link di tipo “http://www.alessio-for-president.com/index.html” anziché puntare alla root del sito “http://www.alessio-for-president.com”, con tutte le conseguenze del caso che sono sintetizzabili in una perfettibile gestione di situazioni simili da parte dei motori di ricerca.
E se è vero che con Big Daddy è sicuramente migliorata la gestione di situazioni da canonizzare come Google comanda e oggi tramite il proprio pannello Webmaster di Google è possibile indicare il dominio preferito per il nostro sito… ammettiamolo: vedere nella barra degli indirizzi del browser “http://www.alessio-for-president.com/index.html” fa veramente cagare.

Ad esempio questo blog riceve un paio di link verso “http://www.sbrana.com/index.html”: visto che ero io il primo a fare la castroneria sul mio sito, qualche altro amico e blogger ha fatto la stessa cosa.
Come risolvere senza mandare in loop il tutto con assurdi redirect (lo dico perchè prima ho pure provato, eh)?
Senza stare a spiegare troppo che cosa significhi ogni singolo comando, visto che gli utenti di RapidWeaver spesso non sono skillatissimi da questo punto di vista, si dovrà creare un file di testo dove inserire quanto segue:

RewriteEngine On
# Redirect index.html to root
rewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
rewriteRule ^index\.html$ http://%{HTTP_HOST}/ [R=301,L]
# Redirect non-www and IP addresses to www.
RewriteCond %{HTTP_HOST} !^www.nomesito.com$ [NC]
RewriteRule (.*) http://www.nomesito.com/$1 [R=301,L]

Che poi non è altro che una riscrittura delle url (o url rewrite).
Poi prendete il vostro abituale programma FTP e caricate il file nella root del vostro sito o comunque nella cartella (tipo httpdocs) dove è conservato il file index.html.
Una volta caricato lo rinominate in .htaccess: sì, con il punto davanti e senza estensione.
Non vi preoccupate se il file sparirà una volta rinominato: lo deve fare. :-)
I file con il punto davanti al nome sono file invisibili: alcuni programmi ftp ve li faranno vedere comunque, altri invece hanno un’opzione per poterli visualizzare.
A questo proposito, al fine di evitare problemi non da poco, è opportuno verificare che già non esista un file htaccess sul vostro sito: se c’è non dovrete fare altro che inserire il codice subito dopo ciò che già trovate scritto nel file: dovrebbe funzionare, ma per scrupolo prima fatevi una copia del vecchio htaccess.

Sì ma che cosa fa?
E’ presto detto: un redirect che dirotta il client, voi con il vostro browser o i vari robot dei motori di ricerca, verso la root del sito.
La prima parte esegue un redirect 301 dalla pagina “index.html” alla root del sito.
La seconda parte, per fare la cosa ancora più figosa, esegue un redirect 301 dall’indirizzo senza “www” (http://sbrana-for-president.com) all’indirizzo che a noi piace tanto dotato di “www”.
Chiaramente al posto di “nomesito.com” dovrete mettere l’indirizzo del vostro sito web. :-)

Il risultato lo potete vedere cliccando sulla link “Bloggando” in alto a sinistra, oppure cliccando su http://www.sbrana.com/index.html o su http://sbrana.com

Quando non funziona?
Se chi vi fa hosting/housing non vi da la possibilità di creare o modificare il file htaccess, e non è raro che ciò accada… beh, chiaro che siete col culo per terra.

E se non ti funziona più niente dopo questa modifica?
Cancella il file htaccess e tutto dovrebbe tornare come prima… se così non fosse, è ovvio che declino ogni responsabilità per danni di qualsiasi genere e/o perdita di dati, parziale o meno che sia.

Funziona solo con RapidWeaver?
No, ma è con RapidWeaver che vengono generati quei deprecabili link interni.
Certo non fa male, ma se né voi dall’interno né altri dall’esterno linkeranno mai il file relativo alla home, ma sempre e solo la root con il www… beh, non avrete problemi.
In fondo sono solo seo-pippe: oggi non è più grave come lo era un tempo.

altri post che ti potrebbero interessare:

Passare da Rapidweaver a Wordpress, con avvitamento di RSS e htaccess carpiato
Temi RapidWeaver: Butella
Aria fresca su RapidWeaver

nessun commento ↓

nessun commento per ora: no news, good news.

lascia un tuo commento