Plik .htaccess
20 06 2008 by Marek Rusak
Drukuj post
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ą.
DirectoryIndex index.html index.php przerwa.html
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
DirectoryIndex przerwa.html
Aby wymusić otwieranie plików skompresowanych w odpowiednich aplikacjach należy wpisać:
AddType application/zip .zip
Możemy również wymusić na przeglądarce pobieranie plików zamiast ich automatycznego odczytywania:
AddType application/octet-stream .pdf
Zmiany kodowania dokumentów:
AddDefaultCharset ISO-8859-2
Własny komunikat błędu:
ErrorDocument 404 "Brak takiej strony na serwerze"
Moduł mod_rewrite czyli przyjazne linki
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]
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.
RewriteRule ^artykul-([^-]+).html$artykul.php?id=$1
([^-]+) 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:
#po linijce Options FollowSymLinks php_flag session.use_trans_sid off
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:
RewriteCond %{HTTP_HOST} ^www.strona.com [NC]
RewriteRule ^(.*)$ http://strona.com/$1 [R=301,L]
Przekierowanie bez WWW na WWW:
RewriteCond %{HTTP_HOST} ^strona.com [NC]
RewriteRule ^(.*)$ http://www.strona.com/$1 [R=301,L]
Atrybut [NC] sprawia, że nie ma znaczenia wielkość użytych liter we wpisywanym adresie.
Więcej informacji tutaj.




[...] Plik .htaccess jest zwykłym plikiem tekstowym. Należy otworzyć go w edytorze tekstu i wstawić do niego następującą treść: [...]
[...] w DirectAdminie możesz łatwo włączyć ochronę wypełniając formularz. Oto przykładowy plik htaccess wygenerowany dla serwisu Praktyczne [...]