Plik .htaccess

Plik .htaccess jest domyślnym plikiem, za pomocą którego można zmieniać ustawienia serwera Apache dla katalogów. Mechanizm .htaccess jest zazwyczaj domyślnie włączony na serwerze.

Z reguły plik .htaccess umieszczany jest w głównym katalogu, można także utworzyć go w każdym innym katalogu. Zapisy zawarte w tym pliku funkcjonują dla danego katalogu oraz wszystkich podkatalogów w nim się znajdujących.

przydatny przy wszelkiego rodzaju przekierowaniach, tworzeniu komunikatów błędów i zmiany sposobu dostępu do naszej strony. Przy każdorazowym odświeżeniu plik ten jest ponownie wczytywany, w związku z tym każda zmiana jest od razu widoczna.

Jeśli pewność, że na serwerze jest włączona możliwość zmiany ustawień za pomocą pliku, należy go stworzyć.  Plik .htaccess powinien mieć uprawnienia 644. Pozwoli to na dostęp do pliku przez serwer, ale uniemożliwi jego zmianę z poziomu przeglądarki.

Po każdej linii zapisu musi wystąpić enter.  Ostatnia linia w pliku .htaccess powinna być linią pustą.

[cc lang=’html4strict’ line_numbers=’false’]DirectoryIndex index.html index.php przerwa.html[/cc]

Taki zapis określa domyślny plik strony www. Jeśli zostanie znaleziony najpierw będzie uruchomiony plik index.html, jeśli go brak, zostanie uruchomiony index.php, jeśli obu nie będzie, domyślnie będzie uruchomiony plik przerwa.html
Jeśli planujemy zmiany na stronie na czas prac możemy włączyć plik ze stosownym komunikatem

[cc lang=’html4strict’ line_numbers=’false’]DirectoryIndex przerwa.html[/cc]

Aby wymusić otwieranie plików skompresowanych w odpowiednich aplikacjach należy wpisać:

[cc lang=’html4strict’ line_numbers=’false’]AddType application/zip .zip[/cc]

Możemy również wymusić na przeglądarce pobieranie plików zamiast ich automatycznego odczytywania:

[cc lang=’html4strict’ line_numbers=’false’]AddType application/octet-stream .pdf[/cc]

Zmiany kodowania dokumentów:

[cc lang=’html4strict’ line_numbers=’false’]AddDefaultCharset ISO-8859-2[/cc]

Własny komunikat błędu:

[cc lang=’html4strict’ line_numbers=’false’]ErrorDocument 404 „Brak takiej strony na serwerze”[/cc]

Moduł mod_rewrite czyli przyjazne linki

[cc lang=’html4strict’ line_numbers=’false’]Metaznaki stosowane w wyrażenia regularnych symbol znaczenie
. Dowolny znak
^ Oznacza początek napisu
$ Oznacznik końca (c$ znaczy, że ciąg tekstowy musi zakończyć się na c)
+ Wystąpi jeden lub więcej razy
* Zero lub więcej wystąpień
? Zero lub jedno wystąpienie
! Negacja wyrażenia
( Rozpoczyna grupowanie (przetwarzanie ciągu znaków, jakby był to pojedynczy element)
[ Rozpoczyna klasę znaków, np. dopasowane do przedziału od 0 do 9, to definicja klasy [0-9][/cc]

Adres www.strona.pl/artykul.php?id=2 będzie czytelny dla użytkownika i wyszukiwarki, gdy będzie następujący: www.strona.pl/artykul-2.html.

[cc lang=’html4strict’ line_numbers=’false’]RewriteRule ^artykul-([^-]+).html$artykul.php?id=$1[/cc]

([^-]+) oznacza dowolny ciąg znaków złożony z przynajmniej jednego znaku bez myślnika (odpowiada za to zapis [^-], czyli każdy znak poza myślnikiem. Gdyby nie symbol ^, temu zapisowi odpowiadałby tylko znak myślnika). Można go również zastąpić ([0-9]+) lub (.*)). Taki ciąg przenoszony jest do drugiej części reguły w miejsce $1.

Usuwanie identyfikatorów sesji:

[cc lang=’html4strict’ line_numbers=’false’]#po linijce Options FollowSymLinks
php_flag session.use_trans_sid off[/cc]

Adresy http://www.strona.pl/ i http://strona.pl/ to z punktu widzenia wyszukiwarek dwa odrębne serwisy.Przekierowanie z WWW na adres bez WWW:

[cc lang=’html4strict’ line_numbers=’false’]RewriteCond %{HTTP_HOST} ^www.strona.com [NC]
RewriteRule ^(.*)$ http://strona.com/$1 [R=301,L][/cc]

Przekierowanie bez WWW na WWW:

[cc lang=’html4strict’ line_numbers=’false’]RewriteCond %{HTTP_HOST} ^strona.com [NC]
RewriteRule ^(.*)$ http://www.strona.com/$1 [R=301,L][/cc]

Atrybut [NC] sprawia, że nie ma znaczenia wielkość użytych liter we wpisywanym adresie.

Więcej informacji tutaj.

Idź po więcej informacji.

mod_rewrite. Podręcznik administratora



mod_rewrite. Podręcznik administratora, więcej…

Moduł mod_rewrite, nazywany często „scyzorykiem armii szwajcarskiej”, to potężne narzędzie administratorów serwerów WWW, które uruchomiono w oparciu o Apache. Za jego pomocą można w dowolny niemal sposób manipulować adresami URL wpisywanymi przez użytkowników w przeglądarce internetowej. Mod_rewrite, oparty na dyrektywach i wyrażeniach regularnych, pozwala na zmianę postaci adresów URL w oparciu o zmienne środowiskowe, nagłówki HTTP i wiele innych warunków. Ogromne możliwości mod_rewrite sprawiają, że jest on określany jako „równie skomplikowany i tajemniczy jak magia woodoo”.

1 komentarz

  1. Krzysiek

    ciekawy artykuł dzięki

Trackbacis/Pingbacki

  1. przekierowanie 301 | Praktyczne Porady Online - [...] Plik .htaccess jest zwykłym plikiem tekstowym. Należy otworzyć go w edytorze tekstu i wstawić do niego następującą treść: [...]
  2. Ochrona przed hotlinkowaniem | Serwis4U - [...] w DirectAdminie możesz łatwo włączyć ochronę wypełniając formularz. Oto przykładowy plik htaccess wygenerowany dla serwisu Praktyczne [...]
  3. Ostatnio diety i odchudzanie to bardzo modny temat. Postanowiłem sprawdzić jak to jest "Lekki" SEO i bezpieczny Wordpressz WordPressem. Należy mu się odchudzanie, czy nie? | Serwis4U - [...] przekierowanie strony bez www na www w pliku htaccess [...]

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *