GNU/Linux >> Linux Esercitazione >  >> Linux

Come reindirizzare utilizzando Htaccess – Regole comuni per 301, 302, HTTPS

Come configurare il reindirizzamento utilizzando il file .htaccess. Htaccess è un file che viene utilizzato per apportare modifiche alla configurazione del server Web senza modificare il file di configurazione del server. Questo file .htaccess verrà inserito nella directory principale del tuo sito web.

In questa guida imparerai come configurare alcuni elenchi di reindirizzamenti che sono principalmente necessari per la tua SEO e il posizionamento nei motori di ricerca.

Questo è l'elenco dei reindirizzamenti che imparerai qui.

  • Reindirizza da HTTP a HTTPS con www.
  • Reindirizza da HTTP a HTTPS senza www.
  • Reindirizza una pagina a un'altra pagina.
  • Reindirizza il vecchio dominio al nuovo dominio.
  • Reindirizza il vecchio dominio al nuovo dominio preservando il percorso.
  • Reindirizza la posizione dei file al nuovo dominio con lo stesso percorso.
  • Reindirizza tranne un determinato percorso.
  • Reindirizza il sottodominio alla sottocartella.

Nota: I reindirizzamenti seguenti utilizzano il reindirizzamento permanente 301, quindi se necessario puoi provare le regole utilizzando invece il reindirizzamento temporaneo 302 e testarle.

1. Reindirizza da HTTP a HTTPS con www

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]

2. Reindirizza da HTTP a HTTPS senza www

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

3. Reindirizza una pagina a un'altra pagina

La sintassi è

Redirect type(302/301) old_location new_location
Redirect 301 /old_page https://www.domain.com/new_page

Redirect 301 /old_page https://www.domain.com/folder/

4. Reindirizza il vecchio dominio al nuovo dominio

RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.com$
RewriteRule ^(.*)$ "https\:\/\/new-domain\.com\/" [R=301,L]

5. Reindirizza il vecchio dominio al nuovo dominio preservando il percorso

RewriteEngine on
RewriteCond %{HTTP_HOST} ^olddomain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.olddomain\.com$
RewriteRule ^(.*)$ "https\:\/\/newdomain\.com\/$1" [R=301,L]

6. Reindirizza la posizione dei file al nuovo dominio con lo stesso percorso

RewriteRule ^.*\.(pdf|doc)$ https://newdomain.com%{REQUEST_URI} [R=301,L]

7. Reindirizzamento tranne un determinato percorso

Ad esempio, se desideri reindirizzare tutto il frontend del tuo sito Web a un nuovo dominio eccetto le pagine wp-admin di WordPress, devi utilizzare le seguenti regole prima delle regole di reindirizzamento.

RewriteCond %{REQUEST_URI} !^(.*)?wp-login\.php(.*)$
RewriteCond %{REQUEST_URI} !^(.*)?wp-admin$
RewriteCond %{REQUEST_URI} !^/(wp-includes/.*|wp-admin/.*|wp-content/.*)$

8. Reindirizza il sottodominio alla sottocartella

Viene utilizzato principalmente per reindirizzare un sito basato su sottodomini a un sito basato su sottocartelle.

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI}/ subfolder
RewriteRule ^(.*) https://domain.com/%{REQUEST_URI} [R=301,NC]
RewriteRule ^(.*) https://domain.com/blog/%{REQUEST_URI} [R=301,NC]


Linux
  1. Come impostare l'autenticazione di base in Apache utilizzando .htaccess

  2. Come reindirizzare gli URL utilizzando Nginx

  3. Come reindirizzare da http a https usando .htaccess?

  4. Come reindirizzare automaticamente HTTP a HTTPS sui server Apache?

  5. Come ascoltare più connessioni tcp usando nc

Come reindirizzare da HTTP a HTTPS in Nginx

301 Reindirizzamento utilizzando NGINX

Come abilitare HTTPS per Varnish Cache usando Hitch su CentOS-RHEL 8

Come bloccare un indirizzo IP usando .htaccess?

Come forzare HTTPS per il mio dominio?

Impossibile determinare la porta https per il reindirizzamento in Docker