disign.it | Htaccess e header location | a digital sign for a best design!
A digital sign for a best design
Programmazione 2.656 visualizzazioni

Htaccess e header location

16/02/2012

Se applichiamo il mod_rewrite (qui un articolo precedente che trattava l'argomento) per riscrivere le url in modo SEO friendly, noteremo che i redirect scritti in php che puntano su url virtuali smetteranno di funzionare, e visualizzando il log di errori di Apache verificheremo il seguente messaggio (ovviamente i percorsi varieranno da server a server):

[Thu Feb 16 12:27:26 2012] [error] [client xx.xx.xxx.xxx] File does not exist: /var/www/vhosts/dominio.tld/httpdocs/url_virtuale, referer: http://dominio.tld/url_virtuale/directory_virtuale.

Per superare questa problematica sarà sufficiente inserire nel codice php anziché un header location la chiamata di un redirect javascript, in questo modo:

echo '
<script type="text/javascript">
<!--
window.location = "http://www.dominio.tld/url_virtuale"
//-->
</script>';

In questo modo la chiamata al redirect avverrà client side imponendo un nuovo 'passaggio' da htaccess che riscriverà l'url secondo le impostazioni corrette!

← SEO: cos'è e quali vantaggi PHP: listato della struttura dei Db presenti sul server →

Invia una domanda o un commento sull'articolo

I campi obbligatori sono segnalati *

*

*



 

© 2009 - 2017 Impronte digitali di Luca Frassineti. Tutti i diritti riservati.