Apertura pagina inglese in automatico

Salve,

ho realizzato un sito in doppia lingua, italiano ed inglese. Tutto il sito in italiano sta all'interno della cartella ita della root e quello in inglese nella cartella eng.

Come fare, tramite codice php o direttive apache, per far aprire in automatico la pagina in inglese per tutti quelli non residenti in Italia?

Grazie a quelli che mi aiuteranno.

inviato 8 anni fa
Assolollo
X 0 X

Devi valutare la richiesta del browser, se è impostato per it apri italiano, inglese per gli altri.

risposto 8 anni fa
LonelyWolf
X 0 X

Grazie dell'aiuto LonelyWolf, però ancora non ho capito perfettamente.

Cioè dovrei intercettare la richiesta del browser con la variabile del server $_SERVER[HTTP_ACCEPT_LANGUAGE]?

E poi come impostarlo in modo da reindirizzare automaticamente il browser? Si può fare tramite la direttiva Apache?

risposto 8 anni fa
Assolollo
modificato 8 anni fa
X 0 X

Con apache non so, ma da php basta un if e un header("location......

risposto 8 anni fa
LonelyWolf
X 0 X

qui trovi degli esempi per configurare Apache affinché mostri un determinato file in funzione della lingua del browser:

http://www.ibm.com/developerworks/library/wa-apac.html

Comunque è meglio procedere via PHP, avrai sicuramente maggiore flessibilità.

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Innanzitutto grazie per le risposte.

Il mio dubbio più grande è che facendo il redirect con php la home del sito può avere problemi di indicizzazione, cosa che assolutamente non posso permettermi. Perciò vorrei optare con le direttive di Apache, sempre se queste non creino problemi sui motori.

La mia assoluta priorità è avere una indicizzazione forte delle home, ma se con il redirect della lingua si creassero problemi, devo desistere alla gestione delle lingue.

Voi cosa mi consigliate?

risposto 8 anni fa
Assolollo
X 0 X

il redirect non è un problema per l'indicizzazione, l'importante è associare a URL distinti le diverse lingue del sito.

Quando google verrà ad indicizzare la pagina non dichiarerà la lingua preferita. In questi casi dovresti mostrare una pagina in cui ci sono i link alle diverse home page. Oppure potresti usare una homepage con una lingua di default, contenente tutti i link alle diverse traduzioni del sito.

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Ok, allora io metto il seguente codice in index.php nella root del sito:

<?php 
if ( substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2) == "it") { 
header("Location: http://www.miosito.com/ita/index.php"); 
} else {
header("Location: http://www.miosito.com/eng/index.php"); 
} 
?>

E poi su questa stessa pagina magari aggiungo i due link in formato HTML delle due home page? Così facendo sto in pace con i motori?

risposto 8 anni fa
Assolollo
X 0 X

Si.

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda