GNU/Linux >> Znalost Linux >  >> Linux

Jak přesměrovat pomocí Htaccess – Společná pravidla pro 301, 302, HTTPS

Jak nakonfigurovat přesměrování pomocí souboru .htaccess. Htaccess je soubor, který se používá k provádění změn konfigurace vašeho webového serveru bez úpravy konfiguračního souboru serveru. Tento soubor .htaccess bude umístěn do kořenového adresáře vašeho webu.

V této příručce se naučíte, jak nakonfigurovat seznam přesměrování, který je většinou potřeba pro vaše SEO a hodnocení ve vyhledávačích.

Toto je seznam přesměrování, která se zde naučíte.

  • Přesměrujte HTTP na HTTPS pomocí www.
  • Přesměrujte HTTP na HTTPS bez www.
  • Přesměrujte jednu stránku na jinou.
  • Přesměrujte starou doménu na novou.
  • Přesměrujte starou doménu na novou doménu při zachování cesty.
  • Přesměrujte umístění souborů do nové domény se stejnou cestou.
  • Přesměrování kromě určité cesty.
  • Přesměrujte subdoménu do podsložky.

Poznámka: Níže uvedená přesměrování používají trvalé přesměrování 301, takže v případě potřeby můžete pravidla vyzkoušet pomocí dočasného přesměrování 302 a otestovat je.

1. Přesměrujte HTTP na HTTPS pomocí 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. Přesměrujte HTTP na HTTPS bez 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. Přesměrujte jednu stránku na jinou stránku

Syntaxe je

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. Přesměrujte starou doménu na novou doménu

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

5. Přesměrujte starou doménu na novou doménu při zachování cesty

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

6. Přesměrujte umístění souborů na novou doménu se stejnou cestou

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

7. Přesměrování kromě určité cesty

Pokud si například přejete přesměrovat celý frontend vašeho webu na novou doménu kromě vašich stránek WordPress wp-admin, pak musíte před pravidly přesměrování použít následující pravidla.

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

8. Přesměrujte subdoménu do podsložky

To se používá hlavně pro přesměrování webu založeného na subdoméně na web založený na podsložkách.

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. Jak se připojit k SFTP pomocí FileZilla pro bezpečný přenos souborů

  2. Přesměrování na HTTPS

  3. Jak přesměruji svůj web pomocí (tečka) souboru htaccess?

  1. Jak čekat na restart serveru pomocí Ansible?

  2. Jak poslouchat vícenásobné připojení TCP pomocí nc

  3. Nepodařilo se určit port https pro přesměrování v Dockeru

  1. Jak nastavit základní ověřování v Apache pomocí .htaccess

  2. Jak povolit protokolování error-log.txt pomocí souboru .htaccess?

  3. Jak napsat pravidla pro trvalá síťová jména?