Korzystanie z analitycznych i marketingowych plików cookies wymaga Państwa zgody, którą można wyrazić, klikając „Zaakceptuj”. Jeżeli nie chcą Państwo wyrazić zgody na korzystanie przez nas i naszych partnerów z określonych kategorii plików cookies, należy wybrać opcję „Zarządzaj Cookies” i zadecydować o swoich preferencjach. Wyrażoną zgodę można wycofać w każdym momencie poprzez zmianę preferencji plików cookies. Szczegółowe informacje dotyczące przetwarzania danych osobowych znajdują się w Polityce prywatności.

 

Poniżej możesz zarządzać preferencjami dotyczącymi korzystania przez nas i naszych partnerów z plików cookie.

Niezbędne i funkcjonalne pliki cookie
Zawsze aktywne
Więcej szczegółów: Polityka cookie
Google Analytics

Więcej szczegółów: Google Analytics

Ikona 04:10 min Ikona 07.02.2008

Przyjazne linki – jak tworzyć reguły mod_rewrite?

Moduł mod_rewrite, w który wyposażony jest serwer Apache, służy między innymi do budowy tzw. przyjaznych linków. Jego zastosowanie znacznie wpływa na pozycjonowanie serwisu jak i na czytelność adresów podstron serwisu. W zamian za brzydki, zapełniony zmiennymi adres podstrony (np. index.php?mode=gallery&id=3&subid=19) możemy zyskać adres postaci: gallery/3/9 lub gallery,3,9.html. Jak widać jest on adresem krótszym, łatwiejszym do zapamiętania i wpisania – po prostu przyjaznym.

Korzystając z tego przykładu pokażemy jak w prosty sposób budować przyjazne linki.

Do budowy przyjaznych linków potrzebujemy dwóch rzeczy:

  • – przynajmniej minimalnej znajomości wyrażeń regularnych:
    Wyrażenia regularne stosowane są do opisu reguł przyporządkowania łańcuchów znakowych.

  • – serwera z obsługą mod_rewrite:
    Aby sprawdzić czy serwer obsługuje mod_rewrite wystaczy skorzystać z funkcji phpinfo(). Wyświetli ona informację o obsługiwanych modułach (choć w sporadycznych przypadkach zdarzyć się może, iż mod_rewrite nie jest aktywny, mimo iż jest na liście załadowanych modułów). Większość firm hostingowych (największe: home.pl, nazwa.pl, IQ, Kei) od razu udostępnia obsługę tego modułu.
Oto instrukcje pliku .htaccess umożliwiające działanie takich przyjaznych linków:

RewriteEngine On
RewriteBase /

RewriteRule ([a-zA-Z0-9-_]+)/([0-9]+)/([0-9]+)/ /index.php?mode=$1&id=$2&subid=$3 [L]
RewriteRule ([a-zA-Z0-9-_]+),([0-9]+),([0-9]+).html /index.php?mode=$1&id=$2&subid=$3 [L]

Pierwsze dwie linie instruują Apache’, że uruchamiamy moduł mod_rewrite. Druga linia, nie zawsze potrzebna, wskazuje na podkatalog domeny w jakim następuje przepisywanie adresów. Jeśli posiadasz hosting na serwerach Nazwa.pl jest ona potrzebna, na innych serwerach niekoniecznie.

Kolejne dwie linie to instrukcje przepisania adresów podstron. Omówię po kolei poszczególne bloki instrukcji wg schematu:

RewriteRule maska_przepisania docelowy_adres [opcje]
RewriteRule ([a-zA-Z0-9-_]+)/([0-9]+)/([0-9]+)/ /index.php?mode=$1&id=$2&subid=$3 [L]
Ten człon polecenia wskazuje na polecenie przepisania adresu. Musi się on zawsze pojawić na początku linii opisującej wzór przepisania.

RewriteRule ([a-zA-Z0-9-_]+)/([0-9]+)/([0-9]+)/ /index.php?mode=$1&id=$2&subid=$3 [L]
RewriteRule
([a-zA-Z0-9-_]+),([0-9]+),([0-9]+).html /index.php?mode=$1&id=$2&subid=$3 [L]
Kolejnym elementem polecenia jest opis wzoru adresu za pomocą wyrażeń regularnych. Dokładny ich opis można znaleźć w internecie, tutaj podamy tylko podstawowe informacje korzystając z pierwszego wyrażenia ([a-zA-Z0-9-_]+):
  • – okrągłe nawiasy () wydzielają poszczególne wyrażenia regularne,
  • – nawiasy kwadratowe [] natomiast wydzielają poszczególne grupy znaków,
  • – blok znaków: a-zA-Z0-9-_ wskazuje znaki jakie mogą być użyte w danej grupie znaków. W tym przykładzie mogą to być małe litery a-z, duże litery A-Z, cyfry 0-9 oraz myślnik i podkreślnik. Jak widać na przykładzie kolejne podgrupy wymieniamy po sobie. Oprócz takiego zapisu, jeśli chcemy bardziej ograniczyć zakres znaków możemy wypisać poszczególne znaki, np.:
    • abcdef – jeden ze znaków a-f,
    • ^d – każdy znak inny niż d,
    • . – dowolny znak.
  • znak kontrolny + oznacza krotność znaków w danej grupie:
    • + – jeden lub więcej znaków w bloku,
    • * – zero lub więcej znaków w bloku,
    • {1,3} – jeden, dwa lub trzy znaki w bloku.
  • pozostałe znaki (np. .html) podajemy wprost w postaci jawnej. Jak widać wyżej w przykładzie przed kropką znajduje się znak . Służy on do oznaczania znaków specjalnych (. [ ] ( ) { } ), które bezpośrednio za uważane są jako „normalne” znaki.

RewriteRule
([a-zA-Z0-9-_]+)/([0-9]+)/([0-9]+)/ /index.php?mode=$1&id=$2&subid=$3 [L]
Kolejny blok wskazuje sposób przypisania poszczególnych wyrażeń regularnych do zmiennych w oryginalnych adresach. Kolejność zmiennych ustala się podając kolejne liczby w znakach: $1, $2, $3 itd. Jeżeli kolejność zmiennych w przyjaznym linku różni się od adresu pierwotnego oznaczamy ich kolejność wpisując w kolejności np. $3, $1, $2.

RewriteRule ([a-zA-Z0-9-_]+)/([0-9]+)/([0-9]+)/ /index.php?mode=$1&id=$2&subid=$3 [L]

Podczas tworzenia przyjaznych linków opcje mogą przyjąć takie wartości jak:
  • L – od ang. Last – po znalezieniu pasującej instrukcji RewriteRule serwer wykona przepisanie i zacznie sprawdzać plik .htaccess od początku. Jeśli pominiemy tą opcję serwer po przepisaniu adresu będzie sprawdzał plik .htaccess do końca.
  • NC – od ang. Not Case sensitive – pomijane jest sprawdzanie wielkości liter.
Dzięki użyciu przyjaznych linków możemy osiągnąć kilka korzyści:
  1. Lepsze pozycjonowanie serwisu – linki przyjazne wyszukiwarkom,
  2. Łatwiejsze do zapamiętania adresy podstron – linki przyjazne użytkownikom internetu,
  3. Częściowo ukrywamy strukturę serwisu utrudniając możliwy włam – linki przyjazne webmasterom.
Udostępnij:
Ocena artykułu:
Ikona

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

Udostępnij:

Zadaj pytanie

ekspertowi

Dowiedz się jak być lepiej widocznym w sieci

Bezpłatna wycena Bezpłatny audyt SEO

Czytaj także

Ikona

How useful was this post?

Click on a star to rate it!

Average rating 4.9 / 5. Vote count: 11

No votes so far! Be the first to rate this post.

Trochę humoru, trochę zaskoczenia – poznaj ambient marketing! Ikona 4:00 min 05.06.2023

Trochę humoru, trochę zaskoczenia – poznaj ambient marketing!

Nie od dziś wiadomo, że kreatywność w branży reklamowej to duża zaleta. Istnieje dziedzina, w której jest ona szczególnie pożądana - ambient marketing. Czym dokładnie jest? Jakie są jego rodzaje? Dowiesz się w tym artykule! Czytaj więcej
Ikona

How useful was this post?

Click on a star to rate it!

Average rating 4.9 / 5. Vote count: 12

No votes so far! Be the first to rate this post.

Lejek sprzedażowy – jak trafić do klienta? Ikona 6:00 min 02.06.2023

Lejek sprzedażowy – jak trafić do klienta?

Nie da się stworzyć przekazu, który trafi do każdego. Dobrą praktyką jest dopasowanie działań do konkretnego etapu procesu sprzedażowego, na którym znajduje się konsument. Z pomocą przychodzi lejek sprzedażowy i ToFu, MoFu oraz BoFu. O co chodzi? O segmentację klientów, która pozwoli zwiększyć prawdopodobieństwo finalizacji transakcji. Czytaj więcej
Ikona

How useful was this post?

Click on a star to rate it!

Average rating 5 / 5. Vote count: 1

No votes so far! Be the first to rate this post.

Google Chrome – narzędzie pierwszej potrzeby Ikona 3:10 min 29.05.2023

Google Chrome – narzędzie pierwszej potrzeby

Internet to nieodłączna część naszego życia. Ciężko go sobie wyobrazić bez przeglądarki. Jedną z najbardziej popularnych jest Google Chrome. Jeśli chcesz się dowiedzieć czegoś więcej na jej temat, przeczytaj poniższy artykuł! Czytaj więcej

Na dobry start
proponujemy Ci bezpłatnie:

  • audyt SEO Twojej strony
  • konsultację z doświadczonym ekspertem
  • ofertę dopasowaną do Twojego biznesu

Bezpłatna wycena
Kontakt

Wyprzedź
konkurencję

Zadaj pytanie ekspertowi

61 655 95 55