FAQ - Come si fa il redirect da SENZA WWW a WWW di tutte le pagine del sito?

Per effettuare un redirect di ogni pagina del proprio sito da senza WWW a WWW esattamente come dall'esempio a seguire

######
vecchiodominio.it/pagina1

verso

www.nuovodominio.it/pagina1
######

basta generare un file .htaccess nella cartella "public_html" del proprio sito ed inserire il codice come segue:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^tuodominio.it [NC]
RewriteRule ^(.*)$ http://www.tuodominio.it/$1 [L,R=301]

Il codice di sopra effettuerà il redirect di tutte le pagine del sito che non hanno il prefisso "www"  verso la url corrispondente con il "www."

Se si rendesse necessario mantenere separati "http" e "https", basterà utilizzare il codice a seguire:

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^tuodominio.it [NC]
RewriteRule ^(.*)$ http://www.tuodominio.it/$1 [L,R=301]

RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^tuodominio.it[NC]
RewriteRule ^(.*)$ https://www.tuodominio.it/$1 [L,R=301]

L'esempio riportato sopra farà in modo che qualora il protocollo utilizzato fosse "https", il redirect su  "www" resterà su "https".


Per reindirizzare invece HTTP WWW e HTTP NON-WWW su HTTPS WWW

L'approccio migliore è il seguente:

RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.tuodominio.it%{REQUEST_URI} [L,NE,R=301]


Se si avessero sottodomini all'interno della cartella /public_html o se non si vuole scrivere il dominio di destinazione del codice, magari perchè va inserito su molti account e si ha fretta (soluzione meno performante in quanto c'è un passaggio in più che va ad estrarre il nome host)

RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [L,NE,R=301]

Si possono anche mantenere separati HTTP e HTTPS seguendo con il seguente approccio reindirizzando tutto su https www:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^tuodominio.it [OR]
RewriteCond %{HTTP_HOST} ^www.tuodominio.it [NC]
RewriteRule ^(.*)$ https://www.tuodominio.it/$1 [L,R=301]

RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^tuodominio.it [OR]
RewriteCond %{HTTP_HOST} ^www.tuodominio.it [NC]
RewriteRule ^(.*)$ https://www.tuodominio.it/$1 [L,R=301]
FAQ Precedente su Hosting
<< Come limitare il numero di connessioni con FIlezilla?
FAQ Successiva su Hosting
Come si imposta il Redirect in frame/URL Cloaking/URL Masking? >>
FAQ Correlate

Come si disabilita Magic Quotes con htaccess?
Va innanzitutto detto che non è possibile disabilitare sui nostri server Magic Quotes tramite htaccess, tuttavia per farlo basta creare un php.ini personalizzato. La FAQ prosegue...

Quale è la differenza tra dominio ed hosting?
L'Hosting o il Web hosting è la spazio allocato su un server connesso perennemente a Internet. Questo permette alle persone di qualsiasi parte del mondo...

Come fare il redirect di tutte le pagine del sito su una nuova pagina?
Per reindirizzare tutte le pagine del proprio sito su una singola pagina di un altro dominio, basta creare un file .htaccess Il file .htaccess può essere...

E' possibile avere un php.ini personalizzato?
La procedura più semplice per modificare il php.ini è creare il file .user.ini (attenzione al punto iniziale) e caricarlo nella cartella desiderata, automaticamente tutte le sottocartelle...