Header Ads Widget

Какво е .htaccess файл? Как се използва .htaccess и за какво служи

Какво е .htaccess файл? – файл, който работи на Apace и други NCSA уебсървъри. Името е всъщност малко неточно поради факта, че хипертекст достъпът е само малка функция от многобройните му способности.
Файловете тип .htaccess въздействат на директорията, която се намират те и други директории в множеството от директории, освен ако няма .htaccess файл, съдържащ се в някоя директория. В този случай файлът ще има приоритет за тази дадена директория и след това за всички останали директории от множеството. Следователно ако .htaccess файл се съдържа в коренната директория, той ще афектира всички директорий на уебсървъра.


Основното е следното. Файловете тип .htaccess са ASCII (Standard Code for Information Interchange – Американски Код за Обмяна на Информация), тези файлове се създават най-често на „notepad” или на каквато и да е програма, която може да създава обикновен текст формат. Един от най-често срещаните въпроси за .htaccess файловете е как да ги именуваме, за съжаление могат и да нямат име, а продължението (въпреки необичайно) наистина е дълго 8 символа.

Създаването на файла е някак сложно поради факта, че програми като Операционна Система на Windows няма да позволи да има файл без име, а само с продължение. За да заобиколите тази пречка, това което трябва да направите е да именувате файла както и да било и след като го качите на сървъра да го преименувате на .htaccess . Към този момент файлът ще е невидим за браузърите и ftp клиентите (въпреки, че пак ще може да се навигира към него и да се разглежда съдържанието му), което се дължи на факта, че всеки файл с празно място в началото на името си се счита за скрит файл.

При качването на .htaccess файл е много важно да запомните, че трябва да го качите като ASCII, а не като бинарен. Също така, след като е качен има няколко предпазни мерки, които трябва да се вземат, за да се предотврати четенето му от браузърите. Едното нещо е да се CHMOD разрешенията му на 644 (или RW-R—R–). Другите мерки ще бъдат покрити по-нататък и по-детайлно. Поради рода на информацията, носена в .htaccess файловете е от най-голяма важност да ги държите сигурни.

При създаването на .htaccess файл за първи път има нещо, което трябва да помните, а именно, че повечето от командите са направени да се съдържат на един ред, затова ако използвате текстови редактор, който има функция word wrap ще е във ваш интерес да я изключите, тъй като може да въведе синтаксис, който Apache не разбира и ще доведе до провал на скриптовете ви. Също забележете, че .htaccess файловете няма да работят на платформа NT или Windows – има много други методи за изпълнение на задачите, които .htaccess предлага, но не и такива, които са вързани в такъв малък пакет.

Файловете тип .htaccess не са глобално приети. Поради факта, че може да се използват за сигурност, която може да се превърне в доста сериозна сигурностна дупка. Заради тази причина някои уебхостинг компании или са ограничили употребата на .htaccess файлове или напълно са я премахнали. Преди да отделите време за създаване на .htaccess файл или серия от такива винаги трябва да знаете какво можете и не можете да правите.

Обичайни Страници-Грешки/Страници за Заявки

Има многобройни клиентови заявки и страници-грешки, когато някой навигира даден уеб сайт. Ето кратък списък:
200 – Окей
201 – Създадено
202 – Прието
203 – Не-авторитетна информация
204 – Няма съдържание
205 – Презареди Съдържание
206 – Частично Съдържание
400 – Грешна заявка
401 – Изисква се Ауторизация
402 – Изисква се Плащане
403 - Забранена
404 – Не е намерена
405 – Методът не е Позволен
406 – Неприемливо
407 – Изисква се Proxy Автентичност
408 – Изтече Времето на Заявката
409 – Конфликтна заявка
410 – Изчезнал
411 – Изисква се Дължина на Съдържанието
412 – Предусловието се Разпадна
413 – Заявката е Прекалено Дълга
414 - Заявката URI е Прекалено Дълга
415 – Неподдържан медиа формат

В този списък сме включили някои добри и някои лоши неща към които обичайни страници може да са настроени в .htaccess файл. Например, ако настроите потребителска страница за заявка номер 200, всеки път когато някой напише адрес или влезе в сайта ви, и успешно му се появи страница, то тогава ще се рестартира до страницата посочена в .htaccess файла, и така нататък до безкрай. Това е пример за неправилно използване на функцията.

реклама
Изработка на сайт, оптимизация на уеб сайтове и реклама в Интернет от студио Уеб Дизайн България

Все пак, ако настроите за грешка 404, когато някой въведе грешен url или линк към страница, която е остаряла, ще може да бъде насочен към приятна професионално изглеждаща страница, която също би могла да е полезна и да предоставя линкове обратно към главната ви страница или към помощна секция на сайта ви.

Кодирането, използвано в .htaccess файлове за довършването на заявка или грешка е както следва (и трябва да е само на един ред):

ErrorDocument code /directory/filename.ext

Това например може да изглежда така:

ErrorDocument 404 /errors/404.html

Това би насочило всеки, който е получил грешка 404 на сайта към папка, наречена грешки и след това към файл 404.html.
Може също да добавите и html към .htaccess файла за тези, например може да добавите:

ErrorDocument 404 „ The page you are requesting is not here, please use your back button to return. – (Страницата, която се опитвате да отворите не бе открита, моля използвайте бутона “back”, за да се върнете.)

Забележете, че има кавички в началото на html-а, но не и в края му. Това е така, за да може Apache да го прочете правилно. Също се убедете, че всичко е на един ред, така че изключете word wrap когато го пишете.

Директории, защитени с парола.

За да се предпази с парола някоя директория, ще ви трябват два файла: .htaccess и .htpasswd файлове. Начинът за наименование е идентичен с този при .htaccess файловете.
В .htapasswd ще трябва да поставите името (username) и паролата (password) (въпреки че паролата трябва да е шифрирана), които искате да използвате, например, ако използваме име (username) за името и парола (password) за паролата ще изглежда по следния начин:

username:66yGQHg8KA7jw

За да шифрирате паролата потърсите в гугъл за password encrypt и използвайте някой онлайн инструмент.


От мерки за сигурност не се препоръчва да поставяте .htpasswd файла в директория, която не е уеб достъпна, по-скоро се опитайте да я поставите над вашата коренна www директория. Също не забравяйте да качите .htpasswd файла като ASCII, а не като бинарен.

Сега трябва да добавите кода към .htaccess файла, който да бъде локализиран в директорията, която искате да защитите с парола.

AuthUserFile /home/users/web/b2278/ph.dprouse/.htpasswd
AuthGroupFile /dev/null
AuthName EnterPassword
AuthType Basic

require user username