. Htaccess – великий і вухатий захисник всього живого.

Як відомо, самим популярним на цей день веб-сервером є Apache в різних версіях (а зовсім не IIS, як стверджує Microsoft). Його ставлять на свої сервера більшість хостітелей, послуга ж "NT-хостингу" (Тобто саме IIS) коштує зазвичай дорожче. Воно і зрозуміло – і незручний він для звиклих до Linux адмінів, і глючний (чомусь черв'яки плодяться саме під IIS), і тому дорогою.

Налаштовувати Apache можна по-різному. Комусь хочеться, щоб на його сторінки можна було переходити тільки по посиланнях з титульною, комусь хочеться, щоб за відсутності в папці індексного файлу виводилося вміст папки, комусь хочеться сам індексний файл перейменувати в yakrutoiadmin.html … Немає жодних проблем, якщо ви один на своєму особистому сервері – редагуєте налаштування Apache як вам хочеться, і все пучком. А якщо ви користуєтеся чужим хостингом?

Уявіть собі ситуацію, коли доблесний Антон Нехороших (адмін на Valuehost'e) мужньо народжує нові опції по конкретній нової заявці, яка суперечить попередній. Що вийде? Правильно, нічого працювати ні в кого не буде. А тепер уявіть, що установки у всіх однакові, тобто такі, які потрібні більшості (яке, як це зазвичай буває, зовсім навіть не більшість, а просто стадо). В обох випадках нормальній людині робити буде нічого, як клепати уродскіе сайти.

На допомогу людству приходить. Htaccess – захисник всього живого на планеті! За допомогою цього чудового файлу можна змінювати налаштування Apache стосовно до конкретних папок конкретного користувача. Насправді далеко не завжди цей файл так називається, і працювати він буде теж далеко не завжди. Всі знову залежить від настройок апача.

У файлі налаштування Apache є кілька чудових директив, а саме AccessFileName і AllowOverride. Перша задає ім'я файлу налаштування (за умовчанням. Htaccess), друга дозволяє / забороняє його використання в папці. Щоб працювали налаштування. Htaccess, обидві директиви повинні бути налаштовані відповідним чином. Тільки переконавшись у тому, що це так, можна починати створювати власний варіант захисника всього живого. До речі, більшість безкоштовних хостингів, хоча і тримають у себе Apache, використання. Htaccess не дозволяють.

У першу чергу переконайтеся, що ваш сервер використання. Htaccess дозволяє. Для цього можна створити файл. Htaccess (він повинен лежати в настроюваної папки, тобто в корені), що складається з однієї тільки рядки:

ErrorDocument 404 /missing.html 

У missing.html запишіть що-небудь типу

<html>
<head> 
<title> Дурень косою </ title>
</head>
<body> 
Ви намагаєтеся потрапити на неіснуючу сторінку. 
</body>
</html>

Тепер спробуйте набрати щось типу http://вашадрес.дм/dfdfdfdfd. Якщо вас обізвали косим дурнем, значить. Htaccess у вас працює, а заголовок бреше:). До речі, ось і перша родина директив. Ви можете налаштувати реакцію сервера на будь-яку помилку, використовуючи конструкцію

ErrorDocument номерошібкі / імяфайла.html

Нагадую, що номери помилок розшифровуються так:

Ще одна важлива директива дозволяє настроїти той самий багатостраждальний
індексний файл. Наприклад, можна змінити index.shtml на privet.php:

DirectoryIndex privet.php

Наступні директиви вказують, в яке кодування Apache повинен перекодувати файли, і в якому кодуванні ви їх на сервер закачуєте. Нагадую, що кодування може бути ще, наприклад, koi8-r.

CharsetDefault windows-1251 CharsetSourceEnc windows-1251 

Ще зазвичай виходить погано, коли користувач може вивести список файлів в папці, якщо там немає індексного файлу. Щоб уникнути цього ефекту, необхідно додати. Htaccess рядок

Options -Indexes 

Або, наприклад, злісний хостітель піклується про завантаження процесора свого сервера, і змушує робити файлів з SSI-директивами розширення shtml … Змінити це легко і просто, додаванням в. Htaccess всього одній тільки рядки:

AddHandler server-parsed .shtml .shtm .htm .html 

Тепер, як неважко здогадатися, всі перераховані розширення будуть знаменувати собою файл, що містить SSI включення. А от щоб використовувати в. Html файлах PHP включення, доведеться зробити трохи хитріше, так як доведеться враховувати те, що SSI і PHP в одному файлі використовувати не можна. Треба писати так:

RemoveHandler. Html. Htm AddType application / x-httpd-php. Php. Htm. Html. Phtml 

Ще може виникнути проблема, яка полягає в тому, що закачується на сервер скриптом файли виходять в неправильному кодуванні. Можна спробувати вирішити її так:

<Location /path/to/upload.cgi> CharsetDisable On </ Location>

Більш детальна інформація про директиви. Htaccess вже не відноситься до розділу FAQ-документів, і може обговорюватися в форумі. Залишається додати, що вкрай складно уламати Notepad, в якому і редагуються файли, зберегти файл без імені, та ще й з таким нестандартним розширенням, як. htaccess. Необхідно зберегти його з типом "Всі файли / All files" і тшательно простежити, що розумний Notepad НЕ виправив нашу "помилку".

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*