Файл налаштування доступу до сервера .htaccess
сайтостроєніє
Файл налаштування доступу до сервера. htaccess
Автор: Максим Приходько
Опубліковано 30 листопада 2005 року
Так як серед серверних систем найбільш популярна операційна система Unix, то і найпоширеніший сервер не MS IIS , а Apache (версія якого, правда, існує і для Windows).
Коли в рядку браузера вводиться ім'я вашого сайту, саме сервер вирішує, які файли показувати і як. А управляти роботою сервера щодо веб-сайту можна маніпулюючи файлом настройки. htaccess, будь-яка зміна якого негайно вступає в силу.
Синтаксис. htaccess має жорстку структуру, недотримання якого призводить до помилок сервера, тому необхідно виконувати наступні дві вимоги:
- Шляхи до файлів (директорій) вказуються від кореня сервера. Наприклад: / opt / home / www.mysite.ru / htdocs / config /. htpasswords
- Домени вказуються із зазначенням протоколу. Наприклад: Redirect / http://www.site.ru
Файл повинен називатися саме "точка" htaccess і бути записаний в UNIX-форматі. У FAR, наприклад, при редагуванні можна натиснути Shift + F2 і вибрати пункт меню "Зберегти як UNIX-текст".
Наведемо прості приклади управління доступу до сайту з використанням файлу. htaccess:
Заборона на всі файли:
deny from all
Тут all позначає "все".
Дозволити доступ з певного IP-адреси (наприклад, 192.13.237.14):
order allow deny
deny from all
allow from 192.13.237.14
Заборонити доступ з певного IP-адреси (наприклад, 192.13.237.14):
order allow deny
allow from all
deny from 192.13.237.14
Заборона на групу файлів по масці:
<Files "\. (Inc | sql | інші
розширення) $ ">
order allow, deny
deny from all
</ Files>
В даному прикладі сам веб-сервер "Апач" може звертатися до файлів із зазначеними розширеннями.
Можна встановити заборону на конкретний файл по його повній назві (наприклад, config.inc.php):
<Files config.inc.php>
order allow, deny
deny from all
</ Files>
пароль на директорію:
AuthName "Private zone"
AuthType Basic
AuthUserFile / pub / home / логін /.
htpasswd
require valid-user
</ Files>
Значення AuthName буде виводитися для відвідувача і може використовуватися для пояснення запиту авторизації.
Значення AuthUserFile вказує на місце, де зберігається файл з паролями для доступу до даної директорії.
Цей файл створюється необхідні інструменти htpasswd.exe.
Наприклад в директорії, яку захищаємо паролем створюємо.
htaccess з наступним змістом:
AuthName "For Registered Users Only"
AuthType Basic
AuthUserFile / pub / home / yoursite.ru/.htpasswd
require valid-user
</ Files>
У цьому прикладі відвідувач при запиті директорії буде бачити фразу "For Registered Users Only", файл з паролями для доступу повинен лежати в директорії / pub / yoursite.ru / і називатися. htapasswd. Директорія вказується від кореня сервера. Якщо ви неправильно вкажете директорію, то Apache не зможе прочитати файл. htpasswd і ніхто не отримає доступу до даної директорії.
Аналогічно захисту цілої директорії можна встановити пароль тільки на один файл. Наприклад, для захисту файлу private.zip необхідно в файлі. htaccess вказати наступну інформацію:
<Files private.zip>
AuthName "Users zone"
AuthType Basic
AuthUserFile / pub / home / логін /.
htpasswd
</ Files>
Аналогічно, використовуючи команду <Files "\. (Inc | sql | інші розширення) $">, можна вказувати паролі за маскою файлів. Наприклад, для установки пароля на доступ до всіх файлу з розширенням. sql необхідно вказати наступну інформацію:
<Files "\. (Sql) $">
AuthName "Users zone"
AuthType Basic
AuthUserFile / pub / home / yoursite.ru/.htpasswd
</ Files>
Для того щоб зробити перенаправлення відвідувача на сайт http://www.site.ru, в. htaccess необхідно вказати:
Redirect / http://www.site.ru
Далі буде...
Коментарі
Коментуючи, пам'ятайте про те, що зміст і тон Вашого повідомлення можуть зачіпати почуття реальних людей, проявляйте повагу та толерантність до своїх співрозмовників навіть у тому випадку, якщо Ви не поділяєте їхню думку, Ваша поведінка за умов свободи висловлювань та анонімності, наданих інтернетом, змінює не тільки віртуальний, але й реальний світ. Всі коменти приховані з індексу, спам контролюється.