Il posizionamento sui motori di ricerca non è solo ottimizzazione del codice html e backlink. È soprattutto una questione di contenuti, in realtà.
Ma ci sono anche altri aspetti tecnici che vanno curati. Uno di questi è la gestione dei differenti URL attraverso cui è possibile raggiungere un sito web.
Il caso tipico è il dominio con e senza il www. davanti. Ad esempio, potrei raggiungere questo blog sia tramite http://stefanogorgoni.com sia tramite http://www.stefanogorgoni.com.
Se su Apache abbiamo configurato il virtual host attribuendogli i due differenti hostname come ServerName e/o ServerAlias, allora possiamo rendere unico l’url attraverso cui raggiungere il sito con pochissime righe di url rewriting che andranno indicate nel file .htaccess della document root.
Ad esempio, le regole di mod_rewrite per configurare correttamente un redirect permanente da http://stefanogorgoni.com a http://www.stefanogorgoni.com è questo:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^stefanogorgoni.com [NC]
RewriteRule ^(.*)$ http://www.stefanogorgoni.it/100/ [L,R=301]
Prestate attenzione al fatto che le prime due righe devono essere riportate solo una volta, quindi verificate prima che non siano già presenti all’interno del vostro file .htaccess.
Questa tecnica ovviamente funziona solo con Apache.
Ignoro come si possa fare altrettanto su webserver scadenti.
Giovanni dice
Se non sai utilizzare un Il miglior Webserver non categorizzarlo come scadente, perchè per dire questo significa che di Web, SEO, e Programmazione ne capisci ben poco. Prima di parlare informati e sappi che è un dato di fatto che IIS è 1000 volte superiore a Apache. Purtroppo chi non studia bene le cose ed è ignorante non dovrebbe permettersi il lusso di scrivere certe cose… ma purtroppo ultimamente Internet sta diventando spazzatura…
ste dice
Giovanni mi hai fatto sorgere un dubbio. cioé, vista l’email assolutamente inventata che hai inserito per commentare, pensavo volessi restare anonimo. ma poi vedo il link all’Istituto Italiano della Saldatura.
il dubbio é: volevi celarti dietro all’anonimato per dire una cazzata oppure i saldatori davvero credono che IIS sia meglio?
Giovanni dice
Se magari saresti studiato un pò sia Apache che IIS sapresti le potenzialità di quest’ultimo, ma purtroppo in rete ci sono persone ignoranti e chiuse come un MULO che si limitano ad affermare che ciò che utilizzano è la cosa migliore senza provare entrambe le soluzioni.
Dalla tua risposta vedo che un pò la verità fa male… eh… 😉
ste dice
veramente mi fa molto piú male il modo in cui storpi l’italiano.
Reyboz Blog dice
Ciao Stefano!
Non sono qui per dirti che stavo ricerchicchiando lo script dei redirect su Apache e che grazie a te ho trovato e imparato al volo, ma più che altro sento nelle vene il bisogno di appoggiare qualcuno che è costretto a subire commenti simili a quelli del fantomatico Giovanni…
Non è che dietro queste mentite spoglie si cela il nostro caro…Bill? 😉
P.S. Sei molto bravo Stefano spero di ritrovarti in qualche mia query!
Napolux dice
Fico, proprio quello che cercavo. Grazie 1000!
Stefano dice
prego 🙂
jenova dice
LOL, “sono studiato” anche io in materia di webserver, e mai avrei affermato, in maniera del tutto disinteressata, che IIS sia quanto meno paragonabile a Apache… non credo si tratti di una qustione di Linari o Windows fans, ma è un dato di fatto che la maggior parte degli host “seri” sono tutti Apache… chissà perchè..
mah… non ho saputo resistere a commentare… scusami Stefano se ti ho inquinato un pò il post ^^,
MTBVulture dice
Salve,
purtroppo sono incappato in un hosting abbastanza “pessimo” ed ho un piccolo problema:
tutte le pagine senza “www” non vengono caricate.
Allora ho fatto questo:
Ho rediretto i DNS * e @ del mio sito sul mio ip statico dove sta in esecuzione xampp always on così da intercettare le richieste, e poi ho fatto una index.php che mi trasforma le richieste senza www in richieste con www tramite il codice:
php $server = $_SERVER[‘SERVER_NAME’]; header(‘Location: http://www.’ . $server);
putroppo non funziona come dovrebbe (a volte va, altre no).
A me servirebbe un “redirect wild card” da “http://sito.ext/*” a “http://www.sito.ext/*” per qualunque valore di * in PHP (file, sottocartelle, variabili), ed ho a disposizione tutto apache per farlo, ma non so come (sia con php che htaccess).
Mi potete aiutare?
Sarebbe una grande cosa se potesse essere “indipendente” dal dominio, cioè ogni richiesta del tipo sito1.ext, sito2.ext… si trasformi automaticamente in http://www.sito1…, anche se la cosa non è fondamentale.
Grazie.
Dimenticavo: ovviamente il sito NON si trova sul mio pc, devo solo “reindirizzare” la richiesta.
Ischia dice
Ma per fare il redirect dalla home page di un sito.it al sito principale che e’ .com come devo fare?
Ho il problema che molte mappe di google non riconoscono quella pagina perche’ si trova su un dominio diverso.
Non mi interessa il posizionamento nei motori di questo sito, ma solo il redirect…
gendif dice
Ciao nel mio file .htacces c’è già una delle 4 righe e non sò in che posizione inserire le altre. Eccolo:
——————————————–
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
——————————————–
Se puoi indicarmi il da farsi te ne sarei grato:-)
Stefano dice
@gendif direi che non fa differenza, mettile prima o dopo il blocco di regole wp
Nico dice
Ciao Stefano,
ho seguito il tuo consiglio nel primo post e funziona, ma solo per il dominio principale.
Ad esempio se volessi accedere a “http://miosito.it/forum/” non esegue direttamente il redirect a “http://www.miosito.it/forum/”
Hai qualche suggerimento ? Grazie
Nico dice
se digito “http://miosito.it/forum/” non reinderizza in “http://www.miosito.it/forum/”. Lo fa solo se richiamo il dominio principale “http://miosito.it” -> “http://www.miosito.it”. Grazie
Stefano dice
dovrebbe funzionare invece. cosa fa se provi a visitare miosito.it/forum/ ?