pl  pl
 

.htaccess

Z MyDevil.net

Serwer WWW obsługuje httpd nginx, z naszym autorskim modułem obsługującym (pseudo)standard htaccess, pozwalający użytkownikowi z łatwością tworzyć własne zestawienia reguł rewrite.

Wszystkie ustawienia użytkownik może edytować samodzielnie, tworząc plik .htaccess w folderze public_html/ (lub ewentualnie podfolderach) danej domeny.

Poniżej prezentujemy kilka ciekawszych i mniej lub bardziej przydatnych przykładów zastosowania tego pliku. Część z nich została podesłana przez naszych użytkowników.


Spis treści

Zmiana wersji PHP

Domyślnie nasza strona będzie korzystać z PHP w wersji 5.3. Możemy jednak w łatwy sposób to zmienić. Wystarczy dopisać do pliku .htaccess jedną z poniższych linijek, zależnie od języka którego chcemy używać:

AddType application/x-httpd-php52 .php
AddType application/x-httpd-php53 .php
AddType application/x-httpd-php54 .php


Przekierowanie subdomeny na podkatalog

Jeżeli posiadamy domenę i chcemy dodać do niej subdomenę, lecz nie używając kolejnego vhosta, możemy za pomocą .htaccess spowodować przekierowanie subdomeny na podkatalog. Przypuśćmy, że mamy domenę example.com i chcemy subdomenę test.example.com przekierować na podkatalog test.

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?test\.example\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/test/
RewriteRule ^(.*)$ /test/$1 [L]


Zabezpieczenie przed hotlinkowaniem obrazków

Hotlinkowanie to umieszczanie na stronie obrazków, które użytkownik pobiera z zewnętrznego serwera. Jeśli nie chcemy, by na innych stronach wyświetlały się obrazki które są umieszczone na naszym serwerze, dodajemy następujące linijki do pliku .htaccess:

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://domena.pl$      [NC]
RewriteCond %{HTTP_REFERER} !^http://.*\.domena.pl$      [NC]
RewriteCond %{HTTP_REFERER} !^http://domena.pl/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://.*\.domena.pl/.*$      [NC]

RewriteRule .*\.(jpg|jpeg|gif|bmp)$ - [F,NC]


Zabezpieczanie katalogu hasłem

Istnieje możliwość zabezpieczenia całego katalogu (lokacji) na naszej stronie hasłem (lub nawet całej strony WWW). Aby to uczynić, należy utworzyć plik /usr/home/domains/domena.pl/hasla.passwd (będą w nim przetrzymywane loginy i hasła).

dialog-warning.png

Uwaga

Plik z hasłami należy utworzyć dodając pierwszego użytkownika poleceniem:

htpasswd -c /usr/home/użytkownik/domains/domena.pl/hasla.passwd login

Folder, który ma być chroniony hasłem powinien zawierać plik .htaccess o następującej treści:

AuthType Basic
AuthUserFile "/usr/home/użytkownik/domains/domena.pl/hasla.passwd"
require valid-user
AuthName "Zabezpieczony katalog"

Jak widać, AuthUserFile wskazuje na plik, który utworzyliśmy wcześniej. Nic nie stoi na przeszkodzie, by do różnych folderów używać różnych plików z loginami i hasłami.

info.png

Przykład

Zarządzanie listą użytkowników i haseł

Dodawanie nowego użytkownika:

htpasswd /usr/home/użytkownik/domains/domena.pl/hasla.passwd login

Usuwanie użytkownika:

htpasswd -D /usr/home/użytkownik/domains/domena.pl/hasla.passwd login


Domyślne kodowanie plików tekstowych

W przypadku gdy chcemy udostępniać pliki .txt w których nie sposób określić kodowania znacznikiem meta, lub zwyczajnie mamy wiele plików .html bez ustawionego kodowania, możemy wymusić prawidłowe wyświetlanie przez przeglądarki za pomocą dyrektywy AddDefaultCharset, np.

AddDefaultCharset utf-8


info-blue.png

Zobacz także

WWW - dodawanie stron internetowych do konta.