Какво е htaccess и как да го използвам ?
Какво е .htaccess ?
.htaccess е файл с който могат да бъдат променяни settings на сървъра и позволява да се изпълняват множество функции, най-популярни от които са:
- настройване на собствена 404 error страница;
- показване на файловия листинг в защитени директории;
- ban на IP адреси;
- промяната на дефоултната index страница чрез задаване друг файл да бъде използван в качеството на index файл и др.
Всяка версия на Apache уеб сървър поддържа .htaccess
Как да направя .htaccess файл ?
Отворете който и да е редактор, например Notepad и създайте файла. Файла практически няма име, а само разширение след точката, което е htaccess - това е причината, която може да породи известни трудности в някои случаи, тъй като някои операционни системи няма да го възприемат.
Ако не успеете да създадете файла, именовайте го по друг начин, например htaccess.txt, качете го на хоста и след това го преименувайте чрез FTP програма.
Синтаксиса на командите в .htaccess трябва да бъде абсолютно верен, в противен случай файла няма да изпълни предназначението си.
Най-често използване на .htaccess
Най-често файла се използва за задаване на собствена 404 error страница.
Синтаксисът на командата е:
ErrorDocument errornumber /page.html
Например:
ErrorDocument 404 /notfound.html
или
ErrorDocument 404 errorfolder/notfound.html
в случай, че файла не е в основната директория.
Други команди на .htaccess
- Забрана за показване на файлове и папки: Options -Indexes
- Разрешаване за показване на на файлове и папки: Options +Indexes
- Ban-ване на IP адреси: deny from ххх.ххх.ххх.ххх където ххх.ххх.ххх.ххх е забранения IP адрес.
При бан на множество IP адреси се изписва deny from за всеки поотделно. С една команда deny from може да се ban-не и цяла адресна област. За целта трябва да се укажат само първите 3 числа от IP адреса и да се сложи точка след тях: "ххх.ххх.ххх."
Ban на всички посетители: deny from all
- Разрешаване на достъп за даден/и IP адрес/и: allow from ххх.ххх.ххх.ххх
- Задаване на алтернативен индекс файл. Когато не желаете индекса ви да бъде index.html или index.htm може да зададете друг файл като индексен чрез командата: DirectoryIndex file като на мястото на file сложите желания за индекс файл, например:
DirectoryIndex index.php
или
DirectoryIndex index2.html
или
DirectoryIndex index.php4
или
DirectoryIndex mypage.pl
или
DirectoryIndex index.wml и т.н.
Може да се зададат като алтернативни и няколко файла, например:
DirectoryIndex index.php mypage.pl index2.html index.htm index.wml
като в този случай сървъра ще проверява подред отляво надясно кой от файловете съществува, за да го покаже като индексен.
Няма ограничения за сетване на индексен файл - ако разполагате с файл primeren.prm ще може да го зададете като индексен чрез DirectoryIndex primeren.prm
- Задаване на html файлове да бъдат третирани като php файлове:
AddType application/x-httpd-php .html
- Редиректване чрез .htaccess
Възможно е цяла директория от даден сайт /например mydir/ да бъде редиректната към друга директория от друг сайт /например mynewdir от сайта mynewsite.com/:
Redirect /mydir http://www.mynewsite.com/mynewdir
- Изключване на safe_mode чрез .htaccess:
AddType application/x-httpd-php4 .php
Това са само някои от възможностите на .htaccess файла. Повече информация за използването на .htaccess може да намерите в материалите на следния адрес:
http://httpd.apache.org/docs/1.3/howto/htaccess.html