.htaccess generator preusmjeravanja
Generiraj 301 i 302 preusmjeravanja za .htaccess ili Nginx, prisili HTTPS i www, premjesti domenu i popravi kose crte, uz provjeru petlji i lanaca.
Najprije napravi sigurnosnu kopiju trenutne konfiguracije i testiraj s 302 prije prelaska na 301: preglednici pohranjuju trajna preusmjeravanja u predmemoriju.
Provjere
Nisu pronađeni problemi.
Kako koristiti .htaccess generator preusmjeravanja
- Odaberi Poslužitelj: Apache (.htaccess) ili Nginx, zatim Vrsta preusmjeravanja: 301 – trajno ili 302 – privremeno.
- U Preusmjeravanja stranica napiši po jedno preusmjeravanje u retku: staru putanju, razmak, pa novi URL, na primjer
/stara-stranica.html /nova-stranica/. Radi i tabulator, zarez ili->, a možeš zalijepiti i pune stare URL-ove ili postojeće retkeRedirect 301 /a /b. - Po želji upiši Tvoja domena (neobavezno) (na primjer
example.com) da preusmjeravanja stranica idu ravno na konačnu adresu. - Pod Kanonska adresa označi Prisili HTTPS i odaberi Prisili www, Ukloni www ili Ostavi www kakav jest. Pod Kosa crta na kraju odaberi hoće li se dodati ili ukloniti.
- Ako se cijela stranica preselila, ispuni Premjesti cijelu domenu sa Stara domena i Nova adresa (apsolutni URL) te ostavi označeno Zadrži putanju da svaka stranica završi na svom ekvivalentu.
- Pročitaj Provjere, zatim Kopiraj ili Preuzmi pravila. Učitaj primjer prikazuje potpunu konfiguraciju.
Alat radi u tvom pregledniku. Ništa što upišeš ne šalje se na poslužitelj.
Kako rade generirana pravila
Za Apache alat piše pravila mod_rewrite, počevši jednim RewriteEngine On. Svaka stranica postaje RewriteRule čiji uzorak počinje s ^/?, pa radi i u datoteci .htaccess (gdje se početna kosa crta uklanja) i u bloku <VirtualHost>. Točke, zagrade, plusevi i drugi znakovi regularnih izraza u tvojim putanjama se escapiraju, a razmak postaje \x20. U novom URL-u $ i % se escapiraju jer bi ih Apache čitao kao povratne reference, a zastavica NE sprječava Apache da URL kodira drugi put.
RewriteRule nikad ne vidi upitni niz. Kad stara adresa sadrži jedan, poput /product.php?id=42, alat dodaje redak RewriteCond %{QUERY_STRING} ^id=42$ i zastavicu QSD, pa se stari parametri odbacuju umjesto da se kopiraju na novu stranicu.
Pravila su poredana tako da se izbjegnu nepotrebni skokovi: najprije premještanje domene, zatim preusmjeravanja stranica, pa kosa crta na kraju, pa HTTPS i www. HTTPS i www rješava jedno pravilo, pa http://www.example.com ide na https://example.com jednim preusmjeravanjem. Kad je tvoja domena poznata, preusmjeravanja stranica i kosih crta već pokazuju na konačnu HTTPS adresu.
Za Nginx se HTTPS, www i premještanje domene pretvaraju u zasebne blokove server s return 301, a preusmjeravanja stranica u retke rewrite koje zalijepiš unutar glavnog bloka server. Izvode se prije odabira lokacije pa pobjeđuju i pravilo kose crte na kraju. Znak ? na kraju cilja sprječava Nginx da doda stari upitni niz kad to ne treba.
Što se provjerava
- Stranica koja preusmjerava na samu sebe ili dvije stranice koje preusmjeravaju jedna na drugu (petlja koja završava porukom „previše preusmjeravanja“).
- Lanci poput A → B → C: usmjeri A ravno na C, jer svaki dodatni skok usporava posjetitelje i troši proračun indeksiranja.
- Ista stara adresa navedena dvaput, pri čemu bi vrijedilo samo prvo pravilo.
- Cilj koji nije ni apsolutni URL ni putanja koja počinje s
/, ili ciljhttp://ili s pogrešnim www na tvojoj domeni. - Postavka kose crte na kraju koja bi cilj ponovno preusmjerila ili ga vratila na izvor.
Česta pitanja
Trebam li koristiti 301 ili 302?
Koristi 301 kad je premještanje trajno: tražilice prenose signale stare stranice na novu i ažuriraju svoj indeks. Koristi 302 za privremene promjene poput održavanja ili kratke kampanje. Preglednici pohranjuju 301 preusmjeravanja u predmemoriju, pa najprije testiraj s 302.
Gdje stavljam datoteku .htaccess?
U korijensku mapu stranice (često public_html ili www), pored index.php ili index.html. Preuzeta datoteka zove se htaccess.txt; preimenuj je u .htaccess ili zalijepi pravila na vrh postojeće datoteke. Zadrži sigurnosnu kopiju izvornika.
Zašto RewriteRule umjesto Redirect 301?
Retci Redirect dolaze iz mod_alias i izvode se u drukčijoj fazi od RewriteRule. Miješanje oba u jednoj datoteci otežava predviđanje redoslijeda. Korištenje samo mod_rewrite drži svako pravilo u jednom predvidljivom nizu i omogućuje podudaranje upitnih nizova.
Moja stranica pokazuje „previše preusmjeravanja“ nakon prisile HTTPS-a. Zašto?
Iza balansera opterećenja, CDN-a ili proxyja koji završava HTTPS, Apache vidi svaki zahtjev kao običan HTTP pa je %{HTTPS} uvijek isključen. U tom slučaju umjesto toga provjeri proslijeđeno zaglavlje, na primjer RewriteCond %{HTTP:X-Forwarded-Proto} !https, ili uključi preusmjeravanje u CDN-u.
Mijenja li ovaj alat moj poslužitelj?
Ne. Samo generira tekst u tvom pregledniku. Ništa se nikamo ne šalje, a ti kontroliraš gdje i kako se pravila instaliraju.
Slični alati
- Robots.txt generator Izradi valjanu robots.txt datoteku s grupama user-agenata, pravilima Allow i Disallow, kartama stranice i crawl-delayem, uz provjeru čestih pogrešaka.
- Hreflang generator Generiraj hreflang oznake za višejezične stranice kao HTML link oznake, unose XML karte stranice ili HTTP zaglavlja Link, uz provjeru ISO kôdova i uzajamnosti.
- Generator meta oznaka Besplatni generator meta oznaka za naslov, meta opis, kanonski URL, robots i viewport, uz provjeru duljine i ispravno escapiran HTML.
- URL kodiranje i dekodiranje Besplatno URL kodiranje i dekodiranje. Postotno kodiraj parametre upita ili cijele URL-ove, dekodiraj nizove %XX i tretiraj + kao razmak. Radi u pregledniku.