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 far girare gli script perl .pl e .cgi?
Gli script CGI (.cgi) e PERL (.pl) funzionano correttamente sui nostri server Linux. Per garantirne il corretto funzionamento, devono essere caricati nella cartella cgi-bin e...

Come si puo' rimuovare la pagina index dalle URL con htaccess?
Per rimuovere dalla URL la pagina index.php (o html, ht, etc et), si puo' usare la riscrittura del file tramite htaccess. Il file .htaccess può essere...

Come configurare un hosting solo per la gestione della posta?
Se si ha il sito su un server esterno e si vuole utilizzare il nostro hosting esclusivamente per la gestione della posta, è fondamentale configurare...

Come creare un ambiente Staging con Softaculous?
Lo staging è una copia del tuo sito web creata in un’area separata, utile per testare aggiornamenti, plugin, temi o modifiche grafiche senza intervenire direttamente...