Какво е .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 000.000.000.000 където 000.000.000.000 е забранения IP адрес.
При бан на множество IP адреси се изписва deny from за всеки поотделно. С една команда deny from може да се ban-не и цяла адресна област. За целта трябва да се укажат само първите 3 числа от IP адреса и да се сложи точка след тях: "000.000.000."
Ban на всички посетители: deny from all
- Разрешаване на достъп за даден/и IP адрес/и: allow from 000.000.000.000
- Задаване на алтернативен индекс файл. Когато не желаете индекса ви да бъде 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
като в този случай сървъра ще проверява подред отляво надясно кой от файловете съществува, за да го покаже като индексен.
Няма ограничения за сетване на индексен файл - ако разполагате с файл blabla.bla ще може да го зададете като индексен чрез DirectoryIndex blabla.bla
- Задаване на 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 може да намерите в материалите от папка Конфигуриране на Apache чрез .htaccess и на следните адреси:
http://httpd.apache.org/docs/1.3/howto/htaccess.html http://www.thesitewizard.com/apache/index.shtml