Am avut un site web organizat într-un subdirector și am hotărât să-l mut în directorul rădăcină al domeniului.
Cea mai mare provocare a fost să menținem toate articolele accesibile prin aceeași cale ca și când ar fi fost într-un subdirector, în timp ce redirecționăm adresa URL către rădăcina domeniului sau către o altă locație dorită.
Apache
Serverul Apache HTTP suportă directiva RewriteCond. Pentru a realiza această modificare, trebuie să editați fișierul .htaccess sau httpd.conf și să adăugați următoarele linii:
RewriteEngine on RewriteBase / RewriteRule ^subfolder/(.*)$ /$1 [R=301,NC,L]
Aici, folosim / ca bază, iar directiva RewriteRule se aplică tuturor adreselor URL din subdirectorul nostru, utilizând expresii regulate. Parametrul R=301 indică o redirecționare permanentă.
Nginx
Putem obține o redirecționare similară cu serverul web Nginx, folosind directiva de rescriere din fișierul /etc/nginx/nginx.conf sau /etc/nginx/conf.d/default.conf:
location ^~ /subfolder { rewrite ^/subfolder(.*)$ $1 last; }
Modificatorul ^~ asigură că această locație de prefix are prioritate chiar dacă adăugăm locații regex ulterior.
IIS
În IIS, putem folosi modulul Rewrite pentru a rescrie URL-urile care se află într-un subdirector, astfel încât să apară ca și cum ar fi în directorul rădăcină. Puteți edita fișierul web.config din folderul webroot (%SystemDrive%inetpubwwwroot) cu următorul cod:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Root_URL_Rewrite" stopProcessing="true"> <match url="^(.*)" /> <action type="Rewrite" url="/subfolder/{R:0}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
Alternativ, puteți utiliza interfața grafică a modulului de rescriere URL din Manager IIS pentru a adăuga o regulă de intrare.
Cloudflare
Putem realiza o redirecționare asemănătoare folosind Cloudflare, urmând pașii de mai jos:
- Autentificați-vă în contul dumneavoastră Cloudflare.
- Selectați contul Cloudflare corespunzător domeniului pentru care doriți să configurați redirecționarea URL-ului.
- Accesați secțiunea Reguli, apoi fila Reguli de pagină.
- În Reguli de pagină, dați clic pe Creare regulă de pagină. Se va deschide o fereastră pentru crearea regulilor de pagină pentru domeniul dumneavoastră.
- În câmpul Dacă adresa URL se potrivește, introduceți modelul URL pentru subdirectorul care ar trebui să corespundă acestei reguli, de exemplu, https://exemplu.com/subdirector.
- Apoi, dați clic pe Adăugați o setare și alegeți Adresă URL de redirecționare din meniul drop-down.
- Dați clic pe Selectați codul de stare și alegeți 301 (Redirecționare permanentă) sau 302 (Redirecționare temporară).
- Introduceți adresa URL de destinație pentru domeniul rădăcină și dați clic pe Salvare și implementare pentru a finaliza.
Exemplul de mai sus are rolul de a redirecționa tot traficul de la https://tipstrick.ro.com/blog către https://tipstrick.ro.com.
Concluzie
După cum ați observat, redirecționarea sau maparea unui subdirector către directorul rădăcină sau către o altă adresă URL este o procedură comună, iar aceasta este suportată de majoritatea serverelor și platformelor web populare, oferind diverse opțiuni.
În continuare, descoperiți cum puteți găzdui mai multe site-uri web pe o singură adresă IP.
V-a plăcut acest articol? Vă invităm să-l împărtășiți cu alții!