Файл htaccess – що це, як працює, нюанси настройки

Що таке htaccess?

Як відомо, для того щоб сайт міг повноцінно працювати, потрібні не тільки з’єднання з інтернетом і комп’ютером, але і спеціальне програмне забезпечення, яке дозволить отримати доступ до файлів через протоколи https або http.

Таке ПО називають веб-сервер. Сьогодні існує безліч різних подібних програм, але найбільш поширеною серед них, є Apache. Причиною такої популярності є відкритий код, можливість безкоштовного використання і регулярні доопрацювання, розширення функціоналу. Крім того, Apache відмінно працює з різними ОС, включаючи Windows і Linux.

Чому ми робимо акцент на цьому ПО?

Саме в Apache, для настройки деяких параметрів веб-сервера, використовується файл «.htacces».

Він дозволяє:

  • Налаштовувати редіректи між сторінками;
  • Запобігти завантаження ваших даних іншими сайтами;
  • Блокувати запити з небажаних IP або від певних UserAgents;
  • Забороняти доступ до ваших даних;
  • Встановлювати адресу пошти, яку буде використовувати адміністратор сервера;
  • І багато іншого.

Важливим моментом є те, що такий файл не обов’язково повинен називатися «.htacces», оскільки за допомогою директиви AccesFileName, можна задати інше найменування.

Як створити файл htaccess?

Відразу скажемо про те, що переважній більшості сучасних CMS, наприклад Вордпресс, файл .htacces, створюється автоматично і навіть має певні початкові налаштування.

Тому, в першу чергу, ми будемо говорити про створення .htacces для html сайту.

Цей файл повинен мати текстовий формат, тому створити його можна за допомогою самого елементарного редактора, наприклад, «Блокнот» або NotePad ++.

Файл – «.htacces». Наявність точки на початку імені обов’язково, так само як і точне дотримання регістру. Справа в тому, що для Apache «.htacces» і «.HTacces», будуть двома різними файлами.

Кодування файлу повинна бути ASCII.

Після створення і заповнення, необхідно залити його на сервер по FTP-протоколу і прибрати у файлу .htacces розширення «* .txt».

Якщо ви використовуєте пристрій на Mac OS, то важливо пам’ятати, що в цій ОС, файли, які починаються з точки, є невидимими. Тому зручніше буде спочатку назвати файл «htacces», а після перенесення на сервер, перейменувати, додавши крапку на початку.

Зазвичай файл .htacces, розміщується в кореневій директорії сайту або сервера.

Важливо! Навіть якщо ви використовуєте CMS, в залежності від обраного процесу установки, файлу .htacces, може і не бути. Відповідно доведеться самостійно створити його, і залити на сервер. При цьому, варто ознайомитися з інформацією про конкретну системою з управління контентом, на предмет того, де саме повинен знаходитися цей файл.

Так наприклад, для WordPress, файл .htacces, повинен знаходитися в каталозі «public_html».

Ще одним важливим моментом, є те, що ряд CMS, вимагають своїх унікальних налаштувань. Тому, має сенс ознайомитися з прикладом файлу htacces, для конкретної CMS.

Приклад файлу htacces, для Вордпресс:

 

Як правильно налаштувати htaccess?

Для правильного налаштування цього файлу, важливо пам’ятати про те, що кожна директива повинна розташовуватися на окремому рядку. При бажанні, можна додати коментарі, за допомогою знака #. Цей же знак, можна використовувати якщо ви хочете відключити директиву, але не хочете видаляти її з файлу.

Якщо вам необхідно зробити правильний документ htacces, для сайту, який робив хтось інший. То може виникнути питання – «як знайти .htacces?».

Логіка нам підказує, що він повинен бути в корені папки з сайтом, однак для деяких CMS, це не так. Тому, якщо ви хочете знайти місцезнаходження файлу .htacces, рекомендуємо почитати технічну інформацію до CMS, з якою ви будете працювати.

Перш ніж, говорити про налаштування, варто згадати про те, що сьогодні можна скачати або скопіювати готовий файл htacces. Цей варіант може бути хорошим рішенням для стандартних сайтів. Однак, варто пам’ятати про те, що рано чи пізно, зміни все одно доведеться вносити. Як мінімум для того, щоб налаштувати перенаправлення (редиректи).

Найчастіше, стандартні файли .htacces, легко знайти на ресурсах присвячених різним CMS.

Отже, давайте розберемося, що ж саме можна зробити за допомогою файлу .htacces?

  1. Сторінки помилок

Однією з найбільш поширених операцій, які роблять за допомогою цього документа, є перенаправлення користувача на спеціальну сторінку. Наприклад, в тих випадках, коли відвідувач вводить адресу сторінки, яку вже не існує, або до якої не маєте доступу.

Для того, щоб виконати це завдання, застосовується команда «ErrorDocument», після неї потрібно вказати код помилки, і адреса сторінки, на яку буде перенаправлений користувач. Адреса сторінки повинен бути відносним.

приклад:

ErrorDocument «код помилки» / адреса сторінки

Найкраще, зробити в корені сайту каталог «error», і помістити всі сторінки туди.

  1. Налаштування редиректів

Сьогодні рекомендується використовувати 301-й редирект, який дозволяє повністю переносити вагу сторінок. Для настройки редиректів в файлі .htacces, необхідно використовувати директиву «Redirect», після якої вказується тип редиректу, адреса сторінки, з якої здійснюється напрямок (відносний), адреса сторінки, на яку ви перенаправляє користувачів (абсолютний).

приклад:

Redirect «тип редиректу» / адреса сторінки http: // домен / адреса сторінки

  1. Обмежити доступ користувачів до сайту по IP

Якщо ви хочете закрити доступ до сайту для користувачів, які користуються конкретними IP-адресами, необхідно додати:

Якщо вам потрібно заборонити доступ до сайту для всіх IP адрес, за винятком кількох, то додаємо:

Якщо потрібно повністю заборонити доступ, незалежно від адреси, то необхідно ввести:

Це тільки декілька найбільш популярних функцій даного файлу, зрозуміло, список функцій, які можна налаштувати за допомогою файлу .htaccess, істотно більше. Повний список директив, рекомендуємо шукати на спеціальних ресурсах, наприклад, на apache.org.

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

Якщо ви хочете з’ясувати причини цієї помилки, найпростішим варіантом, буде подивитися лог-файл. Він розташовується за адресою /var/log/вашдомен.error.log

Що обов’язково потрібно зробити при налаштуванні htaccess?

  1. Заборонити завантаження даних іншими сайтами

Припустимо, що у вас сайт з великою кількістю зображень. Якщо у вас не заборонена завантаження даних з інших сайтів, то хтось може опублікувати розміщуються вами зображення на своїх ресурсах. Завдяки цьому, вони отримують контент, а ви додаткове навантаження на сайт.

Також, існує ймовірність того, що ваш сайт буде повністю скопійований для використання в сумнівних цілях.

  1. Установити блокування всіх запитів від небажаних користувачів

Деякі користувачі, можуть перевантажувати ваш сайт непотрібними запитами, або здійснювати зловмисні або потенційно небезпечні дії. Таких користувачів можна заблокувати за UserAgent.

  1. Створити сторінки для помилок

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

Коли ви спрямовуєте відвідувача на спеціальні сторінки, ви зможете втримати його на своєму сайті. Користувача можна перенаправити на головну сторінку, або на спеціально створений розділ. У деяких інтернет-магазинах, відвідувачів просто направляють на сторінку з товарами, які також можуть їм підійти.

  1. Стиснути деякі елементи за допомогою Gzip

Ця функція дуже корисна в тому випадку, якщо у вас сайт з великою кількістю широкоформатних зображень.

  1. Захистити з паролем особливо важливі документи і папки

Завдяки htacces, ви зможете обмеження доступу до конкретних файлів і папок, за логіном і паролем. Для цього, необхідно буде створити спеціальний файл .htpasswd, і додати в нього необхідні дані в форматі: «логін: пароль». При цьому, найкраще буде скористатися сервісами генерації і шифрування записів в htpasswd, оскільки інакше, логіни і паролі будуть зберігатися в незашифрованому вигляді.

  1. Посилити кешування

Відразу варто сказати, що кешування файлів за допомогою .htacces – неможливо. Проте, з його допомогою можна налаштовувати процес кешування на стороні клієнта.

Правильна настройка кешування важлива, оскільки вона дозволяє істотно прискорити завантаження сторінок сайту.

Взаємодія htaccess, з кириличними доменами

Досить важливою і актуальною темою, сьогодні є налагодження htaccess, для сайтів з кириличними доменами. Справа в тому, що використання кирилиці в цьому файлі не допускається.

Відповідно, виникає питання – «Що робити?».

Як відомо, для кириличних доменів існує уявлення імені в punycode, який призначений для перетворення даних з кодуванням Unicode, в ASCII і аналоги. Для того, щоб дізнатися як саме ваше доменне ім’я буде виглядать в punycode, можна скористатися сервісом Whois.

При цьому, варто пам’ятати про те, що відвідувач побачить в адресному рядку браузера саме punycode-уявлення доменного імені, що природно не є помилкою.

Обробка файлів htaccess неможлива – в чому причина?

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

Ось список найбільш поширених причин:

  • Використовується сервер IIS;
  • Установка PHP як модуля Apache;
  • Установка PHP як CGI;
  • У налаштуванні веб-сервера включена директива AllowOverride All.

Висновок

Htacces, використовується для настройки веб-сайту на сервері Apache, в разі роботи з іншими типами веб-серверів, його просто може не бути, або його функції буде виконувати інший файл.

Грамотна настройка файлу .htaccess, є вкрай важливою для нормальної роботи будь-якого сайту. З його допомогою можна налаштовувати доступ до файлів і папок, редіректи, кешування даних.

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

При заповненні файлу .htacces, вкрай важливо дотримуватися усіх правил, а саме:

  • Для кожної директиви повинна бути окремий рядок;
  • Кодування даних повинна бути ASCII;
  • Всі домени на кирилиці, повинні бути написані в punycode;
  • Коментарі створюються за допомогою знака “#”.

Деякі CMS, вимагають специфічної настройки файлу .htacces.

Часто при установці СMS, файл htacces генерується автоматично, і в подальшому всі необхідні зміни в нього, можна вносити через адміністративну панель.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 4,50 из 5)
Loading...
Цей сайт використовує «cookies». Також сайт використовує інтернет-сервіс для збору технічних даних щодо відвідувачів з метою отримання маркетингової і статистичної інформації. Умови обробки даних відвідувачів сайту див. Політика конфіденційності
×