Ako vytvoriť stránku s presmerovaním. Načo to je? Prechod na inú doménu

  • 10.05.2019

Konfiguračný súbor Htaccess je konfiguračný súbor pre webové servery Apache. Väčšina hostiteľských služieb funguje prostredníctvom tohto servera, takže tento súbor je prítomný na všetkých stránkach. Správcovia webu môžu čiastočne riadiť jej prácu tak, že v nej urobia vlastné zmeny. V tomto článku sa pozrieme na smernice a pravidlá, ktoré je možné zmeniť pri prevádzke servera.

Najdôležitejší súbor .htaccess sa nachádza v koreňovej časti stránky:

Jeho akcie sa vzťahujú na aktuálny adresár a na všetky podadresáre. Tých. vlastníci stránok majú možnosť ovplyvniť iba prácu svojho projektu bez toho, aby zasahovali do práce celého servera. Ak tento súbor chýba, je možné ho vytvoriť pomocou ľubovoľného poznámkového bloku. Hlavná vec je, že názov súboru je „.htaccess“ - bez formátov .txt, .doc atď.

Prostredníctvom súboru .htaccess sa najčastejšie konfiguruje 301 presmerovaní na úrovni servera, čo výrazne urýchľuje proces prechodu na novú stránku, pretože nie je potrebné načítať medzistranu. Tiež určuje, ktorý súbor spracuje chybu 404.

Ďalej sa pozrieme na všetky bežné možnosti presmerovania cez .htaccess a najskôr sa oboznámime s možnosťami a pravidlami.

Aby ste mohli pracovať s presmerovaniami, musíte povoliť modul ReWriteEngine. Ak to chcete urobiť, musíte zaregistrovať dva riadky kódu (najlepšie v hornej časti súboru .htaccess):

Options + FollowSymLinks RewriteEngine On

Tieto riadky umiestnite na samý vrch súboru .htaccess, aby ste mohli pracovať so smernicami modulu mod_write.

Hosting musí tiež mať povolené moduly mod_alias (na podporu Redirect, RedirectPermanent a RedirectMatch).

1. Pravidlá presmerovania, RewriteRule a RewriteCond

1.1. Smernica o presmerovaní

Syntax presmerovania:

Presmerovanie / odkiaľ http: // kde_plna_adresa

Redirect nastavuje priame presmerovanie z jednej stránky na druhú.

Kód presmerovania je napísaný v stave. Nepovinný parameter. Najčastejšie píšu 301, čo signalizuje neustálu zmenu adresy stránky.

Je dôležité, aby bola stránka „od“ napísaná vo formáte bez uvedenia úplnej adresy stránky, ale s úplnou relatívnou adresou URL, ktorá začína lomkou „/“ (tj. Od koreňa stránky). Stránka, kam smeruje presmerovanie, musí byť napísaná celá, t.j. absolútna adresa stránky URL (t. j. s názvom domény a protokolom http alebo https).

napríklad

Presmerovanie 301 /oldpage.php http: //site/newpage.php

Môžete tiež písať inak

RedirectPermanent 301 /oldpage.php http: //site/newpage.php alebo Redirect permanent 301 /oldpage.php http: //site/newpage.php

1.2. Smernica RewriteRule

Smernica RewriteRule určuje pravidlá prechodu. Syntax je nasledovná:

Nahradenie vzoru pravidla [kódy]
  • Pri externom presmerovaní sa zmení adresa URL v riadku prehliadača - „“
  • S interným - nezmení adresu URL adresy v riadku prehliadača - „“ alebo „[L]“

1.3. Smernica RewriteCond

Direktíva RewriteCond definuje podmienky, za ktorých sa pravidlá v RewriteRule vykonávajú.

RewriteCond Compared_String Stav

Tieto podmienky môžu byť napríklad prehliadač používateľa, adresa IP, hlavička atď.

1.4. Smernica RedirectMatch

Direktíva RedirectMatch je podobná ako Redirect s jediným rozdielom, že umožňuje písať regulárne výrazy.

RedirectMatch z miesta kam

2. Príklady presmerovaní 301 v .htaccess

Na mnoho príkladov presmerovaní .htaccess sme sa už pozreli v článkoch:

  • Zmena adresy stránky - presmerovanie zo starej domény na novú

Tu doplníme možnosti presmerovaní, ktoré ešte neboli k dispozícii.

2.1. Presmerovanie z jednej stránky na druhú

Presmerovanie zo stránky site.ru/cat/oldpage na stránku site.ru/newpage.html

RewriteRule ^ cat / oldpage. * /Newpage.html

Alebo druhá možnosť:

Presmerovanie 301 / mačka / stará stránka http://www.site.com/newpage.php

2.2. Presmerovanie zo všetkých súborov .htm na .html

RewriteCond% (REQUEST_FILENAME)! -F RewriteRule ^ (. *) \\. Htm $ $ 1.html

Alebo druhá možnosť:

RewriteRule ^ (. *) \\. Htm $ $ 1,html

2.3. Presmerujte celý adresár na inú stránku

Akákoľvek stránka v adresári a podadresároch / old / bude presmerovaná na /new.php

RewriteRule ^ old (. *) $ /New.php

2.4. Odstránenie ďalších lomiek z adresy URL

Napríklad je k dispozícii a otvorí sa stránka /catalog///stranica.html. Ak sa chcete vyhnúť takejto situácii a neprodukovať nekonečné množstvo duplikátov, mali by ste napísať nasledujúce presmerovanie

RewriteCond% (REQUEST_URI) ^ (. *) // (. *) $ RewriteRule. % 1 /% 2

2.5. Prepísať bez presmerovania

Môžete načítať ďalšiu stránku bez zmeny adresy URL stránky. Napríklad načítajme stránku /news.html a v adresnom riadku sa zobrazí adresa / novinky / šťastné

RewriteRule ^ novinky / happy. * /News.html [L]

2.6. Na koniec adresy hlavnej stránky sa umiestňuje koncová lomka

Napríklad veľa serverov funguje tak, že posledná lomka nie je napísaná v adrese URL. Napríklad http://site.ru. Tento problém rieši nasledujúci kód: stránka sa otvorí na adrese http://site.ru/

RewriteCond% (REQUEST_URI) / + [^ \\.] + $ RewriteRule ^ (. + [^ /]) $% (REQUEST_URI) /

2.7. Odstráňte adresárový adresár z adresy URL

Napríklad na presmerovanie zo stránky site.com/directoriya/stranica.html na webe.com/stranica.html musíte zaregistrovať nasledovné:

RewriteRule ^ directoriya /(.+)$ http://site.com/$1

Alebo druhá možnosť:

RewriteCond % (DOCUMENT_ROOT) / directoriya / $ 1 -f RewriteRule ^ (. *) $ directoriya / $ 1

2.8. Presmerujte parametre GET

Napríklad presmerovanie zo stránky /? Act \u003d page & id \u003d 2 na / page-2 /

RewriteCond% (QUERY_STRING) act \u003d stránka RewriteCond% (QUERY_STRING) id \u003d (\\ d +) RewriteRule. * / Stránka /% 1 /? ]

2.9. Presmerovanie na mobilnú verziu stránky m.site.ru

V tomto príklade je najskôr skontrolovaná skutočnosť, že používateľ otvoril web z mobilného zariadenia (HTTP_USER_AGENT), potom je adresa webu nahradená m.URL

RewriteCond% (HTTP_HOST) ^ (. *) $ RewriteCond% (HTTP_USER_AGENT) (? i: midp | samsung | nokia | j2me | avant | docomo | novarra | palmos | palmsource | opwv | chtml | pda | mmp | blackberry | mib | symbian | wireless | nokia | hand | mobi | phone | cdm | upb | audio | SIE | SEC | samsung | HTC | mot- | mitsu | sagem | sony | alcatel | lg | eric | vx | NEC | philips | mmm | xx | panasonic | sharp | wap | sch | rover | vrecko | benq | java | pt | pg | vox | amoi | bird | compal | kg | voda | sany | kdd | dbt | sendo | sgh | gradi | jb | dddi | moto | iphone | android) RewriteRule ^ $ http: //m.%1

2.10. Presmerovanie zo subdomény

Presmerujme napríklad z ktorejkoľvek stránky subdomény poddomen.site.ru na hlavnú doménu site.ru

RewriteCond% (HTTP_HOST) ^ poddomen.site.ru $ RewriteRule ^ (. *) $ Http: //site.ru% (REQUEST_URI)

3. Ďalšie príklady s htaccess

3.1. Zakážte adresu IP a prehliadač

Zakázať otvorenie stránky pre používateľa z prehľadávača IE s adresou IP 172.111.222.55

RewriteCond% (HTTP_USER_AGENT) MSIE RewriteCond% (REMOTE_ADDR) ^ 172 \\ .111 \\ .222 \\ .55 $ RewriteRule ^. * $ - [F]

3.2. Zakáže konkrétny súbor

Zakážte súbor disable_file.html pre všetkých:

popierať zo všetkých

3.3. Povoliť prístup z jednej adresy IP

Prístup bude povolený iba z jednej adresy IP 172.111.222.55

príkaz odmietnuť, povoliť odmietnuť zo všetkých povoliť od 172.111.222.55

3.4. Zakázať prístup z rôznych adries IP

Zakázať prístup na web z viacerých adries IP 172.112.222.55, 172.113.222.55, 172.114. *. *

príkaz odmietnuť, povoliť odmietnuť všetko odmietnuť od 172.112.222.55 odmietnuť od 172.113.222.55 odmietnuť 172.114. *. *

3.5. URL presmerujte z veľkých znakov na malé znaky

Všetky veľké písmená v adrese URL sa prevedú na malé písmená.

RewriteRule - RewriteRule! - RewriteRule ^ ([^ A] *) A (. *) $ $ 1a $ 2 RewriteRule ^ ([^ B] *) B (. *) $ $ 1b $ 2 RewriteRule ^ ([^ C] *) C ( . *) $ $ 1c $ 2 RewriteRule ^ ([^ D] *) D (. *) $ $ 1d $ 2 RewriteRule ^ ([^ E] *) E (. *) $ $ 1e $ 2 RewriteRule ^ ([ ^ F] *) F (. *) $ $ 1f $ 2 RewriteRule ^ ([^ G] *) G (. *) $ $ 1g $ 2 RewriteRule ^ ([^ H] *) H (. *) $ $ 1 h $ 2 RewriteRule ^ ([^ I] *) I (. *) $ $ 1i $ 2 RewriteRule ^ ([^ J] *) J (. *) $ $ 1j $ 2 RewriteRule ^ ([^ K] *) K (. *) $ $ 1k $ 2 RewriteRule ^ ([^ L] *) L (. *) $ $ 1l $ 2 RewriteRule ^ ([^ M] *) M (. *) $ $ 1m $ 2 RewriteRule ^ ([^ N] *) N (. *) $ $ 1n $ 2 RewriteRule ^ ([^ O] *) O (. *) $ $ 1o $ 2 RewriteRule ^ ([^ P] *) P (. *) $ $ 1p $ 2 RewriteRule ^ ([^ Q] *) Q (. *) $ $ 1q $ 2 RewriteRule ^ ([^ R] *) R (. *) $ $ 1r $ 2 RewriteRule ^ ([^ S] *) S (. *) $ $ 1s $ 2 RewriteRule ^ ([^ T] *) T (. *) $ $ 1t $ 2 RewriteRule ^ ([^ U] *) U (. *) $ $ 1u $ 2 RewriteRule ^ ([^ V] *) V (. *) $ $ 1v $ 2 RewriteRule ^ ([^ W] *) W (. *) $ $ 1w $ 2 RewriteRule ^ ([^ X] *) X (. *) $ $ 1x $ 2 RewriteRule ^ ([^ Y] *) Y (. *) $ $ 1y $ 2 RewriteRule ^ ([^ Z] *) Z (. *) $ $ 1z $ 2 RewriteRule - [N] RewriteCond% (ENV: HASCAPS) TRUE Rewr iteRule ^ /? (. *) / $ 1

Presmerovanie 301 - Tu v skutočnosti nie je všetko také zložité, ako by sa mohlo zdať.

Po prečítaní tejto príručky budete nielen vedieť, čo je to 301, ale môžete ju ľahko uplatniť v praxi.

Jedným z prípadov použitia presmerovania 301 je presun do novej domény. Alebo presmerovanie z jednej konkrétnej stránky webu na inú. Teraz k veci.

Všetko, čo potrebujete, je prístup k súboru .htaccess a schopnosť upravovať a nahrávať tento súbor na server (nemusí byť potrebné ho nahrávať, pretože veľa serverov podporuje cPanel, ktorý vám umožňuje upravovať súbor .htaccess priamo na serveri. server).

Prečo presmerovanie 301?

301 sa používa na vytvorenie presmerovania z jednej stránky na druhú v rámci tej istej domény alebo do úplne inej domény. 301 sa používa v nasledujúcich prípadoch:

1. Zmena názvu súborov a / alebo ich prípon: Presmerovanie 301 môžete použiť, ak chcete zmeniť štruktúru súborov na svojom webe alebo zmeniť prípony súborov (napríklad prechod z html na php). Html bude presmerovaný na web / newfile.php alebo na inú stránku, ktorú zadáte v .htaccess.

2. Prechod na novú doménu: Presmerovania 301 sú kľúčové pri zmene názvu domény. Keď používatelia prejdú na stránky v starej doméne, automaticky sa presmerujú na nové stránky v novom názve domény..html, automaticky sa presmerujú na stránku newdomain.com/page1.html.

3.SEO: 301 presmerovaní sa v SEO často používa, pretože prehľadávačom hovoria, že stránka je presmerovaná navždy. Pomocou presmerovaní 301 tiež môžete bez straty prenášať pozície starých stránok na nové. Pripravil som pre vás dokonca vizuálny obrázok:

4.Partnerské odkazy: bežne sa používajú aj presmerovania, ktoré môžu zvýšiť zapojenie používateľov a zabrániť priamym odchádzajúcim odkazom na pridružené programy. Vytvoríte stránku s príslušným názvom súboru a na ňu použijete presmerovanie 301 na pridružený web. Napríklad namiesto priameho odkazu na stránku partnerkaprimer.com/affiliate-offer.html vytvoríte na svojom webe stránku s názvom súboru „merchantxyz.html“ a keď používatelia prejdú na túto stránku, vashdomen.com/click/ merchantxyz.html, automaticky sa presmerujú na stránku partnerkaprimer.com/affiliate-offer.html. Spravidla musíte tiež pridať atribút k odkazu na svojej stránke merchantxyz.html, aby nebol pridružený odkaz indexovaný.

5. PHP: Namiesto presmerovania PHP je možné použiť presmerovanie, ale ak má váš web veľa odkazov na pridružené zdroje, je bezpečnejšie vytvoriť jednoduchý skript, ktorý presmeruje používateľov.

Ako vytvoriť a nakonfigurovať presmerovanie 301

Je čas sa pozrieť na to, čo je presmerovanie 301 v praxi.

Príklad 1. Zmenili ste názov jedného zo súborov na webe.

Starý názov súboru je /oldpage.html, nový je /newpage.html. Do súboru .htaccess musíte napísať nasledujúci kód:

presmerovanie 301 /oldpage.html http://www.vashdomen.ru/newpage.html

Príklad 2. Stránku .html ste nahradili .php, ale názov je rovnaký.

Starý názov súboru je /yourpage.html, nový je /yourpage.php. Kód je takmer totožný s predchádzajúcim, iba zmeníme príponu:

presmerovanie 301 /yourpage.html http://www.vashdomen.ru/you-page.php

Povedzme, že pridružený odkaz je partnerkaprimer.com.com & affid \u003d 64564242. Úprimne povedané, takéto prepojenie ťažko vzbudzuje u používateľov pokoj a dôveru. Najskôr je na vašom webe potrebné vytvoriť stránku /merchant-offer.html, z ktorej presmerujeme používateľov na pridruženú ponuku. Teraz zostáva umiestniť odkaz na stránku vashdomen.ru/merchant-offer.html a nezabudnúť na atribút rel \u003d "nofollow". Môžete tiež navrhnúť odkaz ako tlačidlo alebo obrázok. Do súboru .htaccess musíte napísať:

presmerovanie 301 /merchant-offer.html http: //www.merchantdomain.com&affid\u003d64564242

Príklad 4. Presmerovanie z domény z www na bez:

RewriteEngine je zapnutý
RewriteCond% (HTTP_HOST) ^ www.vashdomen.ru
RewriteRule ^ (. *) $ Http://vashdomen.ru/$1

A naopak:

RewriteEngine je zapnutý
RewriteCond% (HTTP_HOST) ^ vashdomen.com
RewriteRule (. *) Http://www.vashdomen.ru/$1

Ako vidíte, nie všetko je také komplikované. Teraz viete, čo je presmerovanie 301 a ako ho používať na vašom webe, ak chcete náhle zmeniť názov svojej domény.

V priebehu času sa počet odkazov na webe zvyšuje na objem, ktorý je ťažké manuálne spravovať. Problémy začínajú aj pri malých projektoch, keď potrebujete vymeniť staré odkazy za iné alebo presmerovať prenos zo starých odkazov na nové stránky. Ručné nahradenie odkazov na veľkých projektoch je drvivá práca.

Okrem ťažkostí s udržiavaním odkazov môže veľký počet odkazov na externé zdroje ovplyvniť prístup vyhľadávacích nástrojov k vášmu projektu. Zatváranie odkazov v značke čiastočne rieši problém s vyhľadávacími nástrojmi, ale neuľahčuje udržiavanie stoviek odkazov z vášho webu.

Riešenie problémov

Hlavným riešením problému je použitie systému správy odkazov, kde sa odkazy usporiadajú pomocou presmerovania.

Ak máte nástroj na vytváranie a správu odkazov, môžete vstupnú stránku nahradiť niekoľkými kliknutiami. Výsledkom je, že odkaz vo vašom článku zostáva v rovnakom formáte - yourdomain.ru/link1, a daná osoba už neskončí na aviasales.ru, ale napríklad na top100.aviasales.ru.

Existuje niekoľko spôsobov, ako spravovať pridružené odkazy. Ďalej sme zhromaždili všetky hlavné a podrobne sme diskutovali o otázke, ako presmerovať odkaz na stránku WordPress.

Čo je presmerovanie odkazu

Presmerovanie je metóda presmerovania používateľa na inú stránku na webe. Napríklad kliknutím na odkaz vo formáte: yourdomain.ru/link1, osoba nakoniec skončí na pridruženej stránke, napríklad na aviasales.ru.

Redirect sa používa nielen na správu odkazov v článkoch, ale aj na boj proti duplikácii, chybám 404 alebo pri lepení doménových mien. V druhom prípade môžete vďaka presmerovaniu uložiť polohy a prenos z predchádzajúcich stránok.

Algoritmus presmerovania je veľmi jednoduchý:

  • Používateľ nasleduje odkaz.
  • Server alebo prehliadač údaje spracuje. Ak dôjde k presmerovaniu, používateľ bude presmerovaný na odkaz uvedený v nastaveniach.

Tento postup prebieha automaticky a okamžite.

301, 302, 307 presmerovaní

Existuje 10 kódov HTTP pre presmerovania, ale iba tri z nich sú požadované: 301, 302 a 307. Zvážme ich hlavné vlastnosti.

  • 301 je trvalé presmerovanie, ktoré naznačuje, že prenos pokračuje navždy. Pojem „presmerovanie“ celého webu (pri prechode na novú doménu) obvykle znamená tento kód.
  • 302 - dočasné presmerovanie, označuje, že prenos bol vykonaný dočasne. Táto možnosť je ideálna na organizovanie presmerovania pridružených odkazov.
  • 307 - dočasné presmerovanie. Aplikácia kódu neumožňuje zmeniť metódu žiadosti (GET / POST). V praxi sú pri práci s pridruženými odkazmi 307 a 302 kódy podobné.

Ako presmerovať odkazy

Pre začiatočníkov je ťažké pochopiť presmerovania a uplatniť ich v praxi. Preto zvážime hlavné spôsoby implementácie presmerovania.

Skracovače odkazov

Skracovače odkazov sú najjednoduchší spôsob presmerovania odkazu. Nemusíte nič konfigurovať a inštalovať, stačí použiť webové verzie služieb pre skrátenie, napríklad:

  • https://goo.gl/ (platí do 30. marca 2019)

Všetky vyššie uvedené príklady sú služby na skrátenie odkazu. Takéto presmerovanie vám nedáva slobodu konania, ale umožňuje vám zbaliť všetky odkazy do jedného formátu a dozvedieť sa viac štatistík.

Skripty HTML, JS a PHP

Presmerovanie pomocou skriptov PHP vytvára ďalšie zaťaženie servera, je však vhodnejšie, pokiaľ ide o veľký počet stránok. Tento druh presmerovania funguje na úrovni servera.

Presmerovanie JavaScriptu funguje na úrovni prehliadača. Pretože na spustenie je potrebné úplné načítanie prehľadávača, môže byť táto metóda pomalšia ako presmerovanie PHP. Tento typ sa niekedy používa pre oneskorené presmerovania. Presmerovanie JS nebude fungovať, ak je v prehliadači používateľa deaktivovaný JavaScript.

Presmerovania HTML sú podobné JS a fungujú na úrovni prehliadača, takže sú pomalšie ako presmerovania na úrovni servera.

Doplnky WordPress

Ak je zdroj napájaný z WordPress, je racionálnejšie používať doplnky tretích strán. S ich pomocou môžete odkaz nielen skrátiť, ale aj vytvoriť odkaz na svojej vlastnej doméne, spravovať presmerovania a zhromažďovať štatistiky.

Ďalej sa podrobnejšie pozrieme na každú z metód presmerovania a uvedieme príslušné príklady.

Populárne služby na skrátenie odkazov

  1. Goo.gl

Ak potrebujete zmeniť cieľovú stránku, vyberte odkaz, ktorý vás zaujíma, a v okne, ktoré sa otvorí, označte novú „Cieľovú adresu URL“. Potom starý odkaz povedie na novú stránku a nemusíte ho nahrádzať na celom webe.

Na stránke Click na adrese: https://yourdomain.ru/wp-admin/admin.php?page\u003dpretty-link-clicksviac informácií o uskutočnených kliknutiach je k dispozícii.

Rozšírené možnosti

Všetko, čo je popísané vyššie, sú možnosti bezplatnej verzie. K dispozícii je platená verzia doplnku s názvom Pretty Link Pro. Platená verzia doplnku obsahuje:

  • Automatická výmena odkazov na webe;
  • Automatické umiestňovanie odkazov na zadané slová;
  • Presmerovanie založené na krajine, kde sa používateľ nachádza;
  • Vykonávanie A / B testov;
  • A niektoré ďalšie funkcie.

Cena platenej licencie pre jednu stránku je 57 dolárov ročne. Pri kupóne 10OFF sa cena zníži o 10%.

Je alternatívou ku krátkym odkazom od spoločnosti Pretty Links. Plugin je zameraný na prácu s affiliate programom Amazon, ale je možné ho použiť pre akékoľvek ďalšie odkazy. V súčasnosti viac ako 10 000 ľudí používa odkazy Easy Affiliate Links na skrátenie odkazov.

Hlavné vlastnosti doplnku:

  • Jednoduché rozhranie;
  • Rozdelenie odkazov podľa kategórií;
  • Import a export odkazu XML.

Autori ponúkajú aj doplnky k diskom. Doplnenie podrobných štatistík už bolo implementované, vyvíjajú sa dodatky o špecifikách umiestnenia kliknutí, A / B testovaní a sledovaní „nefunkčných“ odkazov.

Je doplnok na presmerovanie WordPress, ktorý má úplnú funkčnosť skrátenia odkazov, ale primárne sa používa ako doplnok k doplnku Jetpack, ktorý vylepšuje jeho možnosti. Sledovanie štatistík je k dispozícii prostredníctvom bezplatného pluginu Google Analitycs od spoločnosti Yoast.

Vývojári poznamenávajú, že Shortlinks pre Jetpack sú stále vo vývoji, niekedy sa môžu vyskytnúť chyby. Spravidla sú opravené čo najskôr. Pretože sa jedná o projekt s otvoreným zdrojom, problémy sa zvyčajne odosielajú na GitHub.

Je kvalitný doplnok, ktorý sa hodí ako pohodlný pomocník pre blogerov, ktorí. O popularite a kvalite vývoja svedčí 20 tisíc aktívnych stiahnutí a dobré hodnotenie hodnotení. Používatelia vo svojich recenziách upozorňujú na nasledujúce fakty:

  • Ľahké použitie s vizuálnym editorom;
  • Vylepšené skúsenosti so správou odkazov;
  • Bezpečné presmerovanie prostredníctvom kódov 301, 302, 307;
  • Pridávanie obrázkov k pridruženým odkazom;
  • Dostupnosť štatistík a správ.

K dispozícii sú platené licencie (verzia PRO) pre jednu, päť alebo neobmedzený počet stránok.

Presmerujte odkazy pomocou skriptu PHP a Javascript

Ako sme už poznamenali, presmerovania PHP fungujú rýchlejšie ako JS, preto sú medzi správcami webových stránok populárnejšie. Ak chcete implementovať jednoduché presmerovanie, pridajte do svojho súboru index.php nasledujúci kód:

$ links \u003d parse_ini_file ("shortlinks.ini"); if (isset ($ _ GET ["l"]) && array_key_exists ($ _ GET ["l"], $ links)) (hlavička ("Umiestnenie:". $ links [$ _ GET ["l"]])) ;) else (hlavička („HTTP / 1.0 404 nenájdená“); echo „Neznámy odkaz.“;)

V tomto prípade nie je k dispozícii žiadny ovládací panel, všetky nové odkazy sa zadávajú ručne do súboru shortlinks.ini, ktorý sa vytvára manuálne. Do tohto súboru napíšeme napríklad:

Aviasales \u003d https://www.aviasales.ru/?marker\u003dXXXXXX.short

Príklad ukazuje typické presmerovanie odkazu WordPress pomocou skriptu PHP. Prečítajte si viac o tom, ako tento skript PHP funguje, na tomto odkaze.

Presmerovanie JavaScriptu sa nastavuje pomocou kódu umiestneného medzi značkami a na požadovanej stránke. Na splnenie tejto úlohy je k dispozícii doplnok Per page add to head. Príklad jednoduchého kódu pre presmerovanie Javascript je uvedený nižšie:

Upozorňujeme, že vo WordPress s jedným dizajnom bez doplnkov tretích strán môžete medzi značky vložiť nezávislý kód Javascript a nemožné. Preto musíte pre každú stránku vytvoriť samostatnú šablónu alebo na integráciu kódu použiť ďalší doplnok.

Najlepšie riešenie pre weby WordPress

Vytvorenie odkazu s presmerovaním je len polovica úlohy. V budúcnosti je tiež potrebné zachovať odkaz - sledovať štatistiky a meniť cieľové stránky. Okamžité riešenia vyzerajú lepšie ako jednoduché skripty PHP / JS, pretože umožňujú robiť viac s menšími problémami.

Okrem zachovania existujúcich odkazov môžete čeliť ďalšiemu problému - umiestniť nové odkazy na web alebo nahradiť existujúce odkazy.

Napríklad ak prevádzkujete blog o cestovaní už 4 roky a až dnes ste zistili, že existujú špeciálne doplnky pre odkazy. V takom prípade musíte problém vyriešiť - nahradiť stovky a pre niektorých správcov webových stránok dokonca tisíce už zverejnených odkazov.

Univerzálnym riešením je doplnok Pretty Link v pokročilej verzii. Okrem presmerovania vám automaticky umožňuje:

  • Nahraďte existujúce odkazy odkazmi v novom formáte;
  • Odkazy umiestňujte na slová, kde ešte žiadne neboli.

Všetko o tomto pluginu je dobré, až na to, že je platený. Z tejto situácie sa môžete dostať použitím dvoch doplnkov - bezplatnej verzie Pretty Link a bezplatného doplnku na nahradenie starých odkazov na webe.

Ako masívne nahradiť staré odkazy na webe

DÔLEŽITÉ: pred akciami, ktoré by hromadne nahradili odkazy - je vždy - zálohujte databázu svojich webových stránok!

Doplnok Better Search Replace vám pomôže s automatickou výmenou starých odkazov za nové, ako aj s umiestňovaním odkazov na slová. Dnes má plugin viac ako 500 000 aktívnych inštalácií. Medzi hlavné vlastnosti:

  • Hromadná výmena starých odkazov;
  • Výber samostatných stolov pre prácu;
  • Nečinné spustenie na zobrazenie polí, ktoré sa majú aktualizovať.

Pomocou doplnku môžete aktualizovať staré odkazy alebo umiestniť nové na správne slová. Môžete napríklad vyhľadať slovo „ letenky„A do náhradného poľa uveďte:

„https://www.aviasales.ru/?marker\u003dXXXXXX.short“\u003e letenky

K tejto metóde existujú alternatívy. Môžete použiť podobné doplnky alebo vykonať zmeny v databáze MySQL vášho webu WordPress prostredníctvom ovládacieho panela hostenia. Ďalšou alternatívou je použitie skriptu PHP „Replace DB verzia 3.1.0“, ktorý je k dispozícii na tomto odkaze. Funguje to nielen na stránkach WordPress, ale aj v iných populárnych CMS.

Pri príprave materiálu sme testovali niekoľko populárnych riešení, medzi ktorými bol aj plugin URL Shortener by MyThemeShop. Sľubný popis doplnku hovorí, že v jednom balíku zadarmo získate nástroj na presmerovanie, správu a výmenu hromadných odkazov. Toto riešenie mohlo byť skvelou alternatívou k platenej verzii Pretty Link Pro, ale plugin bohužiaľ nefunguje.

Musím presmerovať pridružené odkazy

Pre pohodlnú údržbu vášho vlastného projektu by sa malo vykonať presmerovanie odkazu. A čím pohodlnejší nástroj na údržbu odkazov si vyberiete, tým efektívnejšia bude vaša práca. Systémy správy odkazov poskytujú viac možností ako manuálne umiestnenie. Test A / B môžete napríklad spustiť pár kliknutiami alebo výmenou vstupnej stránky.

Takmer všetko, čo pluginy a skripty robia, je možné vykonať manuálne. Jedinou otázkou je pohodlie práce a vaše schopnosti.

Pri použití presmerovania nezabudnite, že odkaz, ktorého smerovaniu používateľ nerozumie, môže generovať negatívnu spätnú väzbu. Preto urobte zreteľné a krásne skratky a tiež povedzte používateľovi kliknutie a povedzte mu podrobnosti, kam sa dostane.

Podeľte sa s komentármi o svoje otázky, svoje vlastné skúsenosti s presmerovaním a udržiavaním pridružených odkazov na webe.

Presmerovanie Je automatické presmerovanie používateľov z jednej stránky na druhú. Myslím, že ste sa s tým často stretli, ale ak nie, potom to vyzerá takto - používateľ zadá jednu adresu do adresného riadku prehliadača a skončí na úplne inej stránke. Okrem samotného procesu je presmerovaním skript, ktorého vykonaním prehľadávač presmeruje používateľa na inú stránku.

Pozrime sa bližšie ako presmerovať na inú stránku.

Ako presmerovať na inú stránku?

Prvý spôsob presmerovania na iný web (vhodný pre začiatočníkov)

Zaregistrujeme sa na jednej zo stránok 2domains.ru alebo reg.ru, kúpiť si doménu pre čo konkrétne od nich? Pretože v zóne.ru alebo.rf to stojí iba 99 rubľov ročne! Ďalej musíte počkať niekoľko hodín, kým bude vaša doména zaregistrovaná. Potom prejdeme na panel „Moje domény“, klikneme na doménu, ktorú sme kúpili, a urobíme to, čo je na obrazovke.

reg.ru - možnosť 1 (pri výbere domény)

reg.ru - možnosť 2 (po zadaní zakúpenej domény)

Kliknite na položku Objednať službu preposielania domény / preposielania webu (stojí to 120 rubľov ročne)

V ponuke vpravo choďte do sekcie Web-forwarding a tam opäť klikneme na našu doménu a na nastavenie preposielania

A odtiaľto vidíme, že z domény bude presmerovaný na stránku VKontakte

Druhý spôsob presmerovania na inú stránku

Toto je presmerovanie HTML, kód sa vloží na webovú stránku, ktorú je potrebné presmerovať.

Takže to je všetko. Dúfam, že tento článok je pre vás užitočný.

Čo je presmerovanie jednoduchými slovami

Presmerovanie (Anglicky „Redirect“) je automatické presmerovanie používateľov z jednej stránky na inú stránku (v rámci toho istého webu aj na externé weby). Pre vyhľadávače sa na lepenie adries stránok používa presmerovanie.

Každé presmerovanie má svoje vlastné číslo, ktoré zodpovedá za jeho funkciu. Existujú nasledujúce typy presmerovaní:

  • 300 presmerovaní - viac možností;
  • - navždy pohnutý;
  • 302 redirect - dokument nájdený;
  • 303 presmerovanie - pozri ďalšie;
  • Presmerovanie 304 - dokument sa nezmenil;
  • 305 redirect - použitie proxy;
  • Presmerovanie 306 - nepoužíva sa;
  • 307 redirect - dočasné presmerovanie;

Líder v používaní týchto presmerovaní je. Používa sa, keď sa navždy zmenila adresa URL stránky. Ako ukazuje prax, toto je najbežnejšia situácia. Vo všetkých nižšie uvedených príkladoch to bude iba on.

Existuje niekoľko spôsobov, ako presmerovať. Každá z nich má svoje vlastné výhody a nevýhody. Ďalej sa pozrieme na každú z nich osobitne s príkladmi.

1. Presmerovanie cez JavaScript

JavaScript má širokú škálu funkcií presmerovania. Nasledujúci príklad ukazuje rôzne presmerovania vykonávané pomocou rôznych funkcií JavaScriptu.

В любом из выше перечисленных вариантов будет автоматический переход на сайт http://ya.ru/

Минусом JavaScript является то, что страница сайта с которого осуществляется редирект обязательно должна существовать это раз. А во-вторых такая конструкция не слишком быстрая, поскольку сначала осуществляется загрузка страницы с которой будет идти редирект - а это лишняя потеря драгоценного времени.

2. Редирект через.htaccess

Напомню, что .htaccess - это специальный файл, который лежит в корневой папке вашего сайта. В нем прописываются все необходимые редиректы. Таким образом уже на уровне веб-сервера происходит переход на нужную страницу без загрузки промежуточных.

В общем виде редирект через файл.htaccess выглядит так:

Redirect [КОД_РЕДИРЕКТА] /АДРЕС_ОТКУДА АДРЕС_КУДА
  • КОД_РЕДИРЕКТА - здесь указывается номер редиректа (можно не указывать, по умолчанию стоит 301);
  • /АДРЕС_ОТКУДА - страница, с которой будет осуществлен переход. Обязательно должна начинаться со слэша "/";
  • АДРЕС_КУДА - указываем полный адрес (URL) куда будет осуществлена переадресация;

Примеры редиректа через.htaccess

1) Редирект с www и без www

301 редирект с сайта без www на страницу сайта с www.

RewriteEngine On RewriteCond %{HTTP_HOST} ^site.ru RewriteRule (.*) http://www.site.ru/$1

В данном случае будет автоматически переход с любой страница site.ru на www.site.ru соотвественно. Например

site.ru/razdel/123.html -> www.site.ru/razdel/123.html site.ru/razdel -> www.site.ru/razdel

Для обратного редиректа с www на без www (www.site.ru -> site.ru) необходимо прописать следующий код:

RewriteEngine On RewriteCond %{HTTP_HOST} ^www.site.ru RewriteRule (.*) http://site.ru/$1

2) Переадресация пользователя на другой домен

Redirect Permanent / http://site.ru

Все пользователи будут автоматически перенаправляться на домен http://site.ru/

3) Переадресация пользователя со страницы на другой адрес

Redirect 301 /start.html http://site.ru/hi.html

Со страницы /start.html будет выполнен автоматический переход на http://site.ru/hi.html

4) Редирект при смене домена сайта (URL)

Иногда нужно сделать полную переадресацию с одного сайта на другой (например, сменился домен сайт). В этом случае необходимо написать следующие четыре строчки:

RewriteCond %{HTTP_HOST} ^olddomen\.ru RewriteRule ^(.*)$ http://newdomen.ru/$1 RewriteCond %{HTTP_HOST} ^www\.olddomen\.ru RewriteRule ^(.*)$ http://newdomen.ru/$1

5) Редирект с http://site/yyyy/mm/dd/post/ на http://site/post/

Такой редирект будет полезен для владельцев блогов на WordPress. Указание года, месяца и числа публикации новости вовсе необязательно и создает лишнюю иерархию, которая мешает продвижению блога. Поэтому нужно использовать следующий код:

RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RedirectMatch 301 /{4}/{2}/{2}/(.+)/$ /$1/

Например, с адреса http://site/2014/11/24/primerposta/ будет 301 редирект на http://site/primerposta/ .

3. Редирект html через мета тег

Редирект html делается через мета тег с помощью атрибут refresh :

...

В данном случае будет выполнен редирект (автоматический переход) на http://site.ru/ через 1 секунду. В content первым параметром является секунды, а вторым URL. Если секунды не указаны, то это означает 0 (мгновенный переход).

4. Редирект php

В PHP есть специальная функция header отвечающая за различные варианты переадресации.

Примеры

header("Location: http://site.ru/", true, 301);// переадресация //с помощью 301 редиректа на site.ru; header("Location: http://site2.ru/");// переадресация с помощью 301 //редиректа на site2.ru; header("Refresh: 5; url=http://site.ru/");// переадресовать с //задержкой на 5 секунд

Какой способ редиректа выбрать?
На мой взгляд самым лучшим является , поскольку все описывается в одном файле и происходит уже не уровне обработки веб-сервера, то есть не требуется загрузки страницы. Это в свою очередь может довольно сильно ускорить процесс загрузки. Во всех других случаях необходимо наличие лишней страницы и небольшой временной задержки из-за того, что страница должна загрузиться хотя бы частично.

Проверить правильность настройки редиректа можно через сервис