.htaccess generator preusmeravanja
Generiši 301 i 302 preusmeravanja za .htaccess ili Nginx, nametni HTTPS i www, premesti domen i popravi kose crte, uz proveru petlji i lanaca.
Prvo napravi rezervnu kopiju trenutne konfiguracije i testiraj sa 302 pre prelaska na 301: pregledači pamte trajna preusmeravanja.
Provere
Nisu pronađeni problemi.
Kako da koristiš .htaccess generator preusmeravanja
- Izaberi Server: Apache (.htaccess) ili Nginx, pa Vrsta preusmeravanja: 301 – trajno ili 302 – privremeno.
- U Preusmeravanja stranica upiši jedno preusmeravanje po redu: staru putanju, razmak, pa novi URL, na primer
/stara-stranica.html /nova-stranica/. Rade i tabulator, zarez ili->, a možeš da nalepiš i pune stare URL-ove ili postojeće redoveRedirect 301 /a /b. - Po želji upiši Tvoj domen (opciono) (na primer
example.com) da preusmeravanja stranica vode pravo na konačnu adresu. - Pod Kanonska adresa označi Nametni HTTPS i izaberi Nametni www, Ukloni www ili Ostavi www kakav jeste. Pod Kosa crta na kraju izaberi da li da se doda ili ukloni.
- Ako je ceo sajt premešten, popuni Premesti ceo domen sa Stari domen i Nova adresa (apsolutni URL), a Zadrži putanju ostavi označeno da svaka stranica stigne na svoj ekvivalent.
- Pročitaj Provere, pa Kopiraj ili Preuzmi pravila. Učitaj primer pokazuje kompletnu konfiguraciju.
Alat radi u tvom pregledaču i ništa što upišeš ne šalje se na server.
Kako rade generisana pravila
Za Apache alat piše mod_rewrite pravila, počevši jednim RewriteEngine On. Svaka stranica postaje RewriteRule čiji obrazac počinje sa ^/?, pa radi i u .htaccess fajlu (gde se početna kosa crta uklanja) i u <VirtualHost> bloku. Tačke, zagrade, plus i drugi znakovi regularnih izraza u tvojim putanjama se escapuju, a razmak postaje \x20. U novom URL-u se $ i % escapuju jer bi ih Apache pročitao kao povratne reference, a oznaka NE sprečava Apache da URL kodira drugi put.
RewriteRule nikada ne vidi query string. Kada stara adresa sadrži jedan, kao /product.php?id=42, alat dodaje red RewriteCond %{QUERY_STRING} ^id=42$ i oznaku QSD, pa se stari parametri odbacuju umesto da se kopiraju na novu stranicu.
Pravila su poređana tako da se izbegnu nepotrebni skokovi: prvo premeštanje domena, zatim preusmeravanja stranica, zatim kosa crta na kraju, pa HTTPS i www. HTTPS i www rešava jedno pravilo, pa http://www.example.com ide na https://example.com jednim preusmeravanjem. Kada je tvoj domen poznat, preusmeravanja stranica i kose crte već vode na konačnu HTTPS adresu.
Za Nginx se HTTPS, www i premeštanje domena pretvaraju u zasebne server blokove sa return 301, a preusmeravanja stranica u rewrite redove koje lepiš unutar glavnog server bloka. Izvršavaju se pre poklapanja sa location, pa pobeđuju i pravilo za kosu crtu na kraju. Znak ? na kraju cilja sprečava Nginx da dodaje stari query string kada to ne treba.
Šta se proverava
- Stranica koja preusmerava na samu sebe ili dve stranice koje se međusobno preusmeravaju (petlja koja se završava porukom „previše preusmeravanja“).
- Lanci kao A → B → C: usmeri A pravo na C, jer svaki dodatni skok usporava posetioce i troši budžet indeksiranja.
- Ista stara adresa navedena dvaput, gde bi važilo samo prvo pravilo.
- Cilj koji nije ni apsolutni URL ni putanja koja počinje sa
/, ili cilj sahttp://ili pogrešnim www na tvom domenu. - Podešavanje kose crte na kraju koje bi ponovo preusmerilo cilj ili ga vratilo na izvor.
Česta pitanja
Da li da koristim 301 ili 302?
Koristi 301 kada je premeštanje trajno: pretraživači prenose signale stare stranice na novu i ažuriraju indeks. Koristi 302 za privremene promene kao što su održavanje ili kratka kampanja. Pregledači pamte 301 preusmeravanja, pa prvo testiraj sa 302.
Gde da stavim .htaccess fajl?
U korenski direktorijum sajta (često public_html ili www), pored index.php ili index.html. Preuzeti fajl se zove htaccess.txt; preimenuj ga u .htaccess ili nalepi pravila na vrh postojećeg fajla. Sačuvaj rezervnu kopiju originala.
Zašto RewriteRule umesto Redirect 301?
Redovi Redirect potiču iz mod_alias i izvršavaju se u drugoj fazi nego RewriteRule. Mešanje oba u jednom fajlu otežava predviđanje redosleda. Samo mod_rewrite drži svako pravilo u jednom predvidivom nizu i omogućava poklapanje query stringova.
Sajt prikazuje „previše preusmeravanja“ posle nametanja HTTPS-a. Zašto?
Iza load balancera, CDN-a ili proksija koji završava HTTPS, Apache vidi svaki zahtev kao običan HTTP, pa je %{HTTPS} uvek isključen. U tom slučaju proveri prosleđeno zaglavlje, na primer RewriteCond %{HTTP:X-Forwarded-Proto} !https, ili uključi preusmeravanje u CDN-u.
Da li ovaj alat menja moj server?
Ne. Samo generiše tekst u tvom pregledaču. Ništa se ne šalje nigde, a ti odlučuješ gde i kako se pravila instaliraju.
Srodni alati
- Robots.txt generator Napravi ispravan robots.txt fajl sa grupama user agenata, Allow i Disallow pravilima, sitemapovima i crawl-delay, uz proveru čestih grešaka.
- Hreflang generator Generiši hreflang oznake za višejezične stranice kao HTML link oznake, XML sitemap unose ili HTTP Link zaglavlja, uz proveru ISO kodova i recipročnosti.
- Meta tag generator Besplatan generator meta tagova za naslov, meta opis, kanonski URL, robots i viewport, sa proverom dužine i ispravno escapovanim HTML-om.
- URL koder i dekoder Besplatan URL koder i dekoder. Procentno kodiraj parametre upita ili cele adrese, dekodiraj %XX sekvence i tretiraj + kao razmak. Radi u pregledaču.