Subskrybuj:   Posty   |   Komentarze
RSS

Mod rewrite – przyjazne linki

« starsze | nowsze »

Mod rewrite – przyjazne linki

Mod Rewrite to funkcja serwera Apache – pozwala ona na „przepisywanie” linków tak aby były bardziej przyjazne dla użytkowników i robotów wyszukiwarek. Jest to szczególnie przydatna funkcja jeżeli posiadamy stronę internetową opartą na jakimś skrypcie. Np. blog, sklep internetowy, czy dowolny CMS.

Na przykład pozwala zamienić nieprzyjazny link typu:

www.domena.pl/index.php?=id1234 itd.(czasem takie adresy mogą być bardzo długie)

na:

www.domena.pl/tutul-podstrony/

Taki adres jest dużo bardziej przyjazny zarówno dla użytkowników jak i robotów wyszukiwarek.

Reguły mod rewrite ustawia się w pliku .htaccess (tak jakby bez nazwy tylko samo rozszerzenie htaccess po kropce), który następnie wgrywa się na serwer przez ftp. Można w nim również ustawiać przekierowania jak np. 301 (przeniesienie strony) czy też z wersji domeny z www na bez www i odwrotnie.

Przykładowy plik .htaccess

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^www.domena.pl [NC]
RewriteRule ^(.*)$ http://www.domena.pl%{REQUEST_URI} [R=301,L]
RewriteRule ^(.+/)feed/?$ /$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

O zasadach formułowania  poszczególnych reguł stosowanych w .htaccess można przeczytać w dokumentacji serwera Apache.

Plik .htacces może służyć również do blokowania ip np. natrętnych robotów spamujących.
Stosuje się wtedy regułę:

Deny From 62.129.235.65przykładowe ip.

Zwykle darmowe serwery z małymi wyjątkami niestety nie obsługują .htaccess, z kolei większość płatnych hostingów już tak. Niektóre skrypty potrafią same generować plik .htaccess (jak na przykład WordPress od wersji 2.7) wystarczy ustawić w panelu zarządzania format linków, a resztę skrypt zrobi za nas pod warunkiem, że nie ma jakichś blokad na serwerze.

Znalazłeś literówkę? Daj nam o tym znać!

Dodaj komentarz lub opinię na forum: