.htaccess - це файл для налаштування веб-сервера Apache. З його допомогою можна обмежити доступ до сайту на основі різних параметрів, налаштувати редиректи, захистити картинки від крадіжки, прискорити роботу сайту за допомогою стиснення та кешування та ще багато чого корисного. У цій статті ви дізнаєтесь про основні особливості .htaccess, а також знайдете приклади команд, які допоможуть покращити роботу вашого сайту. Інформація в цьому розділі — для загального розуміння. Ми спеціально почнемо трохи здалеку і трохи спростимо, щоб було зрозуміло початківцям. Для роботи сайтів в інтернеті використовується спеціальна програма — веб-сервер. Найпопулярніший веб-сервер називається Apache. Більшість сайтів працюють саме з його допомогою. Налаштовується він за допомогою конфігураційних файлів. запитів. Головний конфігураційний файл Apache називається httpd.conf або apache.conf (залежно від дистрибутива ОС). Наприклад, доступу до httpd.conf немає на віртуальному хостингу, де на одному сервері зазвичай працюють сотні сайтів. Для таких випадків і вигадали файл .htaccess.Це дозволяє встановлювати для окремих каталогів на сервері свої параметри Apache, які відрізняються від основної конфігурації. В результаті доступ до головного файлу є тільки у провайдера хостингу, а клієнти можуть трохи змінити параметри веб-сервера конкретно для свого облікового запису за допомогою .htaccess. .htaccess — додатковий конфігураційний файл Apache. За допомогою цього параметра можна встановлювати параметри веб-сервера в окремих папках без змін в основному конфігураційному файлі. Зазвичай файл .htaccess розміщують у кореневій папці сайту. Для основного домену на віртуальному хостингу ця папка зазвичай називається public_html, а для додаткового – так само як і сам домен. щоб ефект від команд поширювався відразу на весь сайт. Як ми писали в попередньому розділі, .htaccess діє на папку, в якій знаходиться, а також на всі дочірні папки. Якщо ви не знаходите .htaccess у кореневій папці, можливо, він просто прихований і вам потрібно включити відображення прихованих файлів. У дочірніх папках можуть бути додаткові файли .htaccess — щоб різні розділи сайту мали різні параметри веб-сервера. Але в більшості випадків одного .htaccess цілком достатньо. Приклад ситуації, коли може бути вигідно створити кілька .htaccess файлів – у вас великий проект, де задіяно декілька CMS. Умовно кажучи, головний сайт зроблено на одній CMS, а блог на WordPress. На локальному комп'ютері створити .htaccess можна за допомогою будь-якого текстового редактора. Просто створіть новий текстовий документ та збережіть його з правильним ім'ям. На хостингу .htaccess можна створити за допомогою командного рядка, FTP-клієнта або панелі керування хостингом. Ім'я файлу - .htaccess. Обов'язково з точкою на початку та обов'язково маленькими літерами. Для Apache .Htaccess та .htaccess це різні файли.Також файл не повинен мати розширення: .htaccess.txt це вже не те, потрібно саме .htaccess. Кожна директива має починатися з нового рядка. Між групами непов'язаних один з одним директив зазвичай залишають один порожній рядок, щоб простіше читати файл. До директив у .htaccess можна додавати коментарі за допомогою символу #, щоб ще більше підвищити читабельність файлу. Усі рядки, які починаються з цього символу, веб-сервер ігноруватиме. Також можна використовувати символ #, щоб вимкнути директиву, не видаляючи її з файлу. Просто встановіть цей символ на початку рядка. Мовою сисадмінів це називається «закоментувати». Ось фрагмент .htaccess для прикладу, як можна оформити файл: У цьому розділі розглянемо кілька популярних можливостей .htaccess, які допоможуть покращити роботу вашого сайту. Це не всі доступні директиви, а лише ті, які на наш досвід використовують найчастіше. Якщо чогось важливого не вистачає, поділіться своєю думкою у коментарях. Зміни набирають чинності відразу після збереження файлу. Перезавантаження веб-сервера не потрібне (на відміну від змін httpd.conf).Але кеш браузера ніхто не скасовував, тому для перевірки директив рекомендуємо використовувати інкогніто режим у браузері. Найчастіше це потрібно, щоб заблокувати доступ до сайту для конкретних IP-адрес. Наприклад, якщо на сайт йде DDoS-атака, або хтось регулярно залишає спамні коментарі. Можна вказувати IP-адреси по одному, а можна заблокувати цілий діапазон. Для цього або вкажіть частину IP-адреси у форматі 123.45.*.* або вирахуйте більш точний діапазон у форматі CIDR за допомогою спеціального калькулятора. Якщо потрібно навпаки, заборонити доступ для всіх, але дозволити для конкретних IP (наприклад, на час розробки сайту) використовуйте таку команду: Можна також заборонити доступ не до всього сайту, а лише до якогось конкретного файлу. Наприклад, конфігураційний файл бази даних. У ньому зберігається пароль від бази, тому до нього ніколи не повинен отримати доступ стороння людина. Якщо у вас сайт WordPress, конфігураційний файл бази даних називається wp-config.php. Закрити доступ до нього можна за допомогою такої команди: Так само можна заблокувати доступ ззовні до цілої групи системних файлів. Для цього використовується директива FilesMatch. Вона працює так само, як і Files, але підтримує регулярні вирази. Ну і останній лайфхак – дозволити доступ до адмінки сайту тільки з певних IP-адрес. Наприклад, з вашого домашнього IP або адреси вашого офісного VPN. Для сайту WordPress для цього достатньо закрити доступ до файлів wp-login.php і xmlrpc.php. Робиться це за допомогою такої команди: Ще один спосіб обмежити доступ до сайту – зробити так, щоб він відкривався за паролем. Як і у випадку з блокуванням за IP-адресою, можна використовувати директиву у звичайному вигляді, щоб встановити пароль на всю папку, де лежить .htaccess. Можна також обернути директиву в тег або , щоб встановити пароль на один або кілька файлів. В результаті при спробі зайти на сайт або отримати доступ до файлу відвідувач побачить таку форму для введення пароля: Для прикладу встановимо пароль лише для сторінки входу до адмінки WordPress. У разі, якщо хтось надумає підібрати пароль до адмінці, йому спочатку доведеться підібрати пароль до сторінки, де він збирався підбирати пароль, хе-хе. Можливо, такий варіант захисту адмінки буде вам зручнішим, ніж блокувати до неї доступ за IP-адресою. Так, доведеться вводити два паролі замість одного, зате можна буде підключитися звідки завгодно. Після додавання правила в .htaccess потрібно також створити файл .htpasswd, де будуть логіни та паролі користувачів. auth. У записів у файлі .htpasswd має бути формат «користувач:пароль» Але з метою безпеки паролі краще не зберігати у файлі у відкритому вигляді, а зашифрувати. ». Скопіюйте рядок і додайте його до файлу .htpasswd. Деталі входу для кожного нового користувача в цьому файлі повинні йти з нового рядка. Якщо ви помітили, що сайт почав повільніше працювати, тому що його сканують різні роботи, забороніть їм це робити за допомогою такої директиви: Це тільки деякі боти, взагалі їх набагато більше. Якщо в директиві немає бота, який навантажує ваш сайт, додайте його самостійно. За замовчуванням, якщо хтось безпосередньо звернеться до якогось каталогу у вас на хостингу, веб-сервер покаже його вміст. Такі речі обов'язково треба забороняти.Не потрібно ризикувати безпекою вашого сайту. У .htaccess це робиться за допомогою директиви Options. У цьому розділі розглянемо кілька найбільш популярних ситуацій, коли потрібно налаштувати редирект. Редирект з однієї сторінки на іншу (якщо змінили URL-адресу сторінки): Редирект з одного файлу в кореневій папці сайту на інший (якщо змінили назву файлу): Редирект усіх сторінок сайту на такі ж сторінки на іншому домені: Редирект всіх файлів з розширенням .html на такі ж файли з розширенням .php: Перенаправлення домену без www на домен з www: І навпаки — перенаправлення домену з www на домен без www: Примусове перенаправлення з HTTP на HTTPs (попередньо потрібно встановити SSL-сертифікат): Інша назва такої настройки – захист від хотлінкінгу (від англ. hotlinking – використання прямих посилань). Йдеться про ситуацію, коли хтось розмістив у себе на сайті зображення за посиланнями на ваш сервер. Відучити від цього можна за допомогою такої директиви: Працює вона так: ви розміщуєте у себе на сервері спеціальне зображення для таких злодюжок, і коли вони розміщують будь-яке ваше зображення у себе на сайті, замість нього відображається саме заготовлена картинка. Що саме завантажити як заготовлену картинку — справа ваша. Можете намалювати у фотошопі плакат «Я краду чужі картинки» або банер із рекламою власних послуг. Тут все залежить від вашої фантазії та бажання покарати хитрунів. Шлях до зображення для злодюжок вказується в директиві RewriteRule. Якщо хочете відображати замість стандартних сторінок з помилками сторінки зі своїм дизайном, використовуйте таку директиву: У цій директиві /errors/403.html це абсолютний шлях до файлу сторінки (без урахування доменного імені). Повний список кодів стану ви знайдете в статті «Коди стану HTTP». Не обов'язково створювати свою сторінку для кожного коду, можна тільки для найпоширеніших помилок: 404 Not Found та 500 Internal Server Error. В ідеалі нова сторінка помилки повинна бути не тільки красивою, але й простими словами пояснювати причини помилки, а також містити посилання, щоб відвідувач міг повернутися на сайт. Для цього Apache використовується модуль mod_deflate. У прикладі перелічені не всі типи файлів. Якщо потрібно, додайте вручну. Встановлюємо скільки часу (в секундах) у браузері відвідувача повинні зберігатися файли тих чи інших типів. У прикладі перелічені не всі типи файлів. Якщо потрібно, додайте вручну. Збільшити час очікування веб-сервера під час виконання сценарію. Допоможе уникнути зависання веб-сервера під час обробки важких скриптів. Визначити максимальний розмір файлу, що завантажується (у прикладі — 128 Мб): Вивести помилки РНР в окремий файл: У цій директиві /home/username/public_html/php_errors.log шлях до файлу з логами. Не забудьте змінити його. Ці директиви не завжди підтримуються на віртуальному хостингу. Наприклад, у нас на віртуальному хостингу їх використовувати вийде лише на VPS. Причина в тому, що веб-сервер, який працює в режимі suPHP, не підтримує директиви php_flag і php_value. Рішенням у цій ситуації буде використовувати розділ "Select PHP Version" на панелі керування cPanel. Там також можна змінити ці параметри. Альтернативний варіант – створити локальний файл php.ini та прописати ліміти в ньому. Зазвичай на віртуальному хостингу файли сайту розміщують у кореневій папці домену. За промовчанням для основного домену ця папка називається public_html, а для додаткового - так само, як і сам домен. У деяких фреймворках зустрічається інша структура, у якій файли проекту лежать над кореневої папці домену, а підпапці. Наприклад, Laravel, де файли проекту лежать у підпапці /public. Через це, після того, як ви заллєте проект на хостинг і введете в браузері ваш домен, ви побачите список усіх папок та файлів замість сайту. Рішення в такій ситуації - додати в .htaccess такий редирект, який перенаправлятиме всі запити в підпапку: Коли ви додаєте правило до .htaccess і не спостерігаєте очікуваного ефекту, причина не завжди очевидна. Особливо на віртуальному хостингу, де немає доступу до основних логів веб-сервера. Ось основні причини, чому так може бути. Можливість використання .htaccess прописується в головному конфігураційному файлі Apache за допомогою директиви AllowOverride.Якщо вона вказана зі значенням None, веб-сервер ігноруватиме .htaccess. Така проблема може бути лише на VPS або виділеному сервері. Якщо у вас віртуальний хостинг, справа 100% у чомусь іншому. Ще одна особливість директиви AllowOverride - з її допомогою можна дозволити в .htaccess всі директиви, а можна лише окремі групи директив. Докладніше про цю директиву читайте в офіційній документації Apache. Ще є директива AllowOverrideList, за допомогою якої можна перерахувати конкретні директиви, які дозволені в .htaccess (а не групи директив, як у випадку AllowOverride). Докладніше про цю директиву читайте в офіційній документації Apache. Можливо так, що при спробі використовувати заборонену директиву в .htaccess виникне помилка 500 Internal Server Error. Але це не обов'язково: AllowOverride має також параметр Nonfatal, завдяки якому можна не виводити помилку, а просто робити запис у логах. Перевірити логи помилок вдасться лише у користувачів VPS або виділеного сервера. На віртуальному хостингу до цих лог доступу немає. У випадку з друкарською помилкою результат може бути таким же, як якщо б директива була заборонена - помилка 500 Internal Server Error. Якщо адміністратор сервера не вимкнув таку поведінку за допомогою Nonfatal у головному конфігураційному файлі. Якщо хочете, можете перевірити вміст файлу на друкарські помилки за допомогою спеціального сервісу — валідатора .htaccess. Ім'я файлу повинне починатися з точки, в ньому повинні бути лише маленькі літери і не повинно бути розширення. Файл буквально називається .htaccess. Чи не htaccess, не .htaccess.txt і не .Htaccess. Теоретично, справа також може бути в тому, що стандартне ім'я .htaccess змінили в головному конфігураційному файлі веб-сервера. Це робиться за допомогою директиви AccessFileName. Наприклад, ось так: Правила .htaccess виконуються у порядку, у якому їх знайшов Apache. Тобто спочатку директиви з .htaccess у кореневій папці, потім директиви з .htaccess у дочірніх папках. Через це може статися так, що директиви у файлі, який розташований глибше в дереві каталогів, перезапишуть директиви з розміщених файлів. Найчастіше таке буває з директивами для редиректу RewriteRule. Якась вищестояща директива може перетворити запит таким чином, що він більше не підходитиме під умови в наступних директивах. При цьому сама по собі непрацююча директива може бути складена правильно. Щоб перевірити цей сценарій, спробуйте переставити непрацюючу директиву на початок .htaccess і перезберегти файл. Сподіваємося, стаття виявилася для вас корисною.Якщо ви знайшли помилку або у статті не вистачає якоїсь важливої інформації, поділіться своїми думками у коментарях. Файл .htaccess (Hypertext Access, Доступ до гіпертексту) — це файл конфігурації сервера, який знаходиться в кореневій папці сайту. У цьому файлі можна зробити додаткові налаштування для захисту від хакерів та спаму, наприклад, заборонити доступ до певного файлу чи папки, встановити пароль на папку, додати редиректи певних запитів, заблокувати IP тощо. Це потужний інструмент, який можна використовувати для підвищення безпеки сайту. У цій статті ви дізнаєтесь, що можна додати до файлу .htaccess для підвищення безпеки сайту. Файл .htaccess знаходиться у кореневій папці сайту. Точка перед назвою файлу означає, що файл невидимий, і ви зможете його бачити, якщо увімкнете налаштування «Показувати приховані файли». Відображати приховані файли у Filezilla
Файл використовується для налаштування сервера, типове застосування файлу: У Вордпресі цей файл використовується для створення красивих постійних посилань (Налаштування - Постійні посилання - Загальні налаштування), і створюється автоматично, коли ця функція вмикається. Якщо ви знаєте, навіщо потрібен цей файл, переходьте до списку. .htaccess Досить чутливий файл, тому одна помилка в синтаксисі може покласти весь сайт. Залежно від вашої установки Вордпрес, у вас може не бути файлу .htaccess, тому його потрібно створити. Ви можете створити його на комп'ютері та перенести на сервер за допомогою ftp-клієнта, або створити цей файл у файл-менеджері на хостинг-панелі. Якщо ваш сервер або комп'ютер не дозволяє створити файл з таким ім'ям, створіть файл htaccess.txt, перенесіть його на сервер і на сервері перейменуйте його в .htaccess. Починаючи з версії 4.2, всі установки Вордпрес мають гарні постійні посилання за замовчуванням, тому файл .htaccess у цих версіях створюється автоматично. У новий порожній файл додайте стандартний запис, який робить Вордпрес. Для одиночної установки: Для мультисайт установки, версія Вордпрес 3.5 або вище, якщо сайти знаходяться у підпапках: Для мультисайт установки, версія Вордпрес 3.5 або вище, якщо сайти знаходяться на субдоменах: Коли ви створюєте новий .htaccess файл, дайте цьому файлу права доступу як мінімум 640 для захисту від можливих атак. Рядки, що починаються з тега #, є коментарями і не є правилами для виконання .htaccess. Додайте свої коментарі до ваших правил. Коли ви додаєте свої правила, додавайте їх вище або нижче стандартних правил Вордпрес. Не додавайте і нічого не редагуйте між рядками #BEGIN WordPress та #END WordPress. Для мультисайтів установок таких коментарів немає, але не додавайте і не редагуйте нічого в коді для мультисайтів установок. Якщо ви щось виправили у цьому коді, Вордпрес повинен автоматично повернути початковий варіант, але краще нічого не міняти. У крайньому випадку, у вас має залишитися копія файлу, яку ви можете повернути на сервер. Додайте свої правила вище або нижче стандартних правил Вордпрес по одному, пишіть до них коментарі, зберігайте та перевіряйте зміни на сайті. Якщо у вас є Nginx сервер, тут ви знайдете htaccess — nginx конвертер. Ви можете редагувати .htaccess з вашого хостинг-панелі, або через ftp-клієнт. У першому випадку зайдіть на вашу хостинг-панель, запустіть файл менеджер, знайдіть файл .htaccess та відкрийте його як звичайний текстовий файл. Якщо ви користуєтеся ftp-клієнтом – зайдіть на свій сервер, знайдіть .htaccess у кореневій папці сайту, скопіюйте його на свій комп'ютер, відредагуйте, збережіть та завантажте назад на сервер. Видаліть старий файл із сервера або замініть старий на новий. Забороніть доступ до файлів wp-config.php, htaccess, php.ini і логам помилок. Додайте це правило, щоб заборонити доступ до цих файлів: У вас може не бути файлу php.ini. Замість нього може бути файл php5.ini або php7.ini. Якщо у вас є файл php5 або php7, замініть php.ini на php5.ini або php7.ini. Якщо файл php.ini немає взагалі, заберіть php.ini| із правила. Якщо ви хочете заборонити доступ лише до файлу wp-config.php, додайте це правило: Якщо ви бажаєте заборонити доступ до всіх файлів .htaccess на сайті, додайте цей код: Якщо ви використовуєте статичний IP, ви можете заборонити доступ до сторінки входу або панелі адміністратора: Перші два рядки перенаправляють відвідувача з неавторизованого IP на сторінку з помилкою 404. Це правило не викликатиме циклічні редиректи, ваш сайт не виглядатиме завислим. Замініть /шлях-до-вашого-сайту/ у двох перших рядках на свою адресу. Якщо вам потрібна лише одна IP-адреса, видаліть рядки 9 і 10, якщо вам потрібно більше адрес, додайте потрібну кількість рядків. Якщо ви або інші користувачі мають динамічний IP (або мультисайт), використовуйте таке правило: Замініть /шлях-вашому-сайту/ і /ваш-сайт.ru/ на свою адресу. Хакери використовують ботів, щоб намагатися потрапити до адмінки Вордпрес. Це правило визначає, що тільки ті користувачі, які вручну набрали wp-login.php або wp-admin у браузері, матимуть доступ до цих сторінок. Цей спосіб не захистить від хакерів, які вручну набирають адресу сторінки входу на сайт, але зменшить кількість автоматичних брут-форс атак (перебір паролів). Ще один спосіб - створіть файл .htaccess у папці wp-admin . Це правило дозволяє доступ до папки лише зазначеним ip: Замініть IP Адреса 1 та IP Адреса 2 на свої IP. Дебетова карта Тінькофф ДрайвЯк користуватися .htaccess: синтаксис та правила
Що таке .htaccess і навіщо він потрібний
Де знаходиться .htaccess
Як створити файл .htaccess
Синтаксис .htaccess
# 301 редиректи Redirect 301 /blog/old-article-1/ https://vashdomen.com/blog/new-article-1/ Redirect 301 /blog/old-article-2/ https://vashdomen.com/blog/new- article-2/ Redirect 301 /blog/old-article-3/ https://vashdomen.com/blog/new-article-3/ # Редирект з www на без www RewriteCond % ^www.vashdomen\.com$ [NC] RewriteRule ^(.*)$ http://vashdomen.com/$1 [R=301,L] # Свої сторінки з помилками ErrorDocument 403 /errors/403.html ErrorDocument 404 /errors/404.html ErrorDocument 500 /errors/500.html ErrorDocument 504 /errors/504.html # Максимально допустимий час виконання скрипту PHP (у секундах) php_value max_execution_time 60
Правила для .htaccess
Обмежити доступ до сайту
# Заборонити доступ до сайту з конкретних IP-адрес Order Allow,Deny Allow from all Deny from 123.45.67.89 Deny from 111.22.33.44 # Заборонити доступ для будь-яких IP, які починаються з 111.22 Deny from 111.22.*.* # Заборонити доступ до діапазону 111.22.33.0 – 111.22.33.199 Deny from 111.22.33.0/25 Deny from 111.22.33.128/26 Deny from 111.22.33.192/29
# Дозволити доступ до сайту лише з конкретних IP-адрес Order Deny,Allow Deny from all Allow from 123.45.67.89 Allow from 111.22.33.44
# Заборонити доступ до wp-config.php
# Заборонити доступ до системних файлів
# Дозволити доступ до адмінки WordPress тільки з конкретних IP-адрес
Налаштувати доступ до сайту за паролем
# Доступ до сторінки входу в адмінку WordPress за паролем
Заблокувати ботів
# Блокування ботів SetEnvIfNoCase User-agent (Abonti|AhrefsBot|Aport|AspiegelBot|asterias|Baiduspider|BDCbot|Birubot|BLEXBot|BUbiNG|BuiltBotTough|Bullseye|BunnySlippers|Butterfly|CamontSpider" ot|CherryPicker|coccoc|CopyRightCheck|cosmos|crawler|Crescent|DeuSu|discobot|DittoSpyder|DnyzBot|DomainCrawler|DotBot|EasouSpider|EmailCollector| Crawler|Exabot|ExtractorPro|Ezooms|FairShare|Fasterfox|FeedBooster|Foobot|Genieo|Gigabot|GrapeshotCrawler|Harvest|hloader|HTTrack| ot|InternetSeer|IstellaBot|JamesBOT|JennyBot|k2spider|kmSearchBot|larbin|LexiBot|libWeb|libwww|Linguee|LinkExchanger| y|magpie|MaxPointCrawler|MegaIndex|memoryBot|MIIxpc|Mippin|MJ12bot|MLBot|moget|MSIECrawler|NetAnts|NetpeakCheckerBot|NICErsPRO|NjuiceBot|NPBot|Nutch|OLEcrawler|Openfind ostRank|ProWebWalker|Purebot|PycURL|RepoMonkey|Riddler|RMA|Scrapy|SemrushBot|serf|SeznamBot|SISTRIX|SiteBot| spanner|spbot|Spinn3r|SpyFu|suggybot|SurveyBot|suzuran|SWeb|Teleport|Telesoft|TheNomad|TightTwatBot|Titan|True_Robot| Unknown|VCI|Vedma|Voyager|WBSearchBot|WebAuto|WebBandit|WebCopier|WebEnhancer|WebmasterWorldForumBot|WebReaper|WebSauger|WebStripper|Wotbox|Yeti| not-allowed=1 Order Allow,Deny Allow from ALL Deny from env=not-allowed
Заборонити індексацію каталогів
# Заборонити індексацію каталогів Options -Indexes
Налаштувати редирект
Redirect 301 /old-url-1 /new-url-1
Redirect 301 /contact-us.php/contact.php
Redirect 301 / https://vashdomen.ua/
RedirectMatch 301 (.*)\.html /$1.php
RewriteEngine On RewriteCond % !^www\..* [NC] RewriteRule ^(.*) http://www.%/$1 [R=301]
RewriteEngine On RewriteCond % ^www\.(.*)$ [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteEngine On RewriteCond % !on RewriteRule (.*) https://%% [R=301,L]
Захистити картинки від крадіжки
# Заборона на крадіжку картинок (hotlinking) RewriteCond % !^$ RewriteCond % !^https://(www\.)?vashdomen\.com/.*$ [NC] RewriteRule \.(gif|jpg|swf|flv|png)$ https://www .vashdomen.com/feed.gif [R=302,L]
Призначити свої сторінки помилок
# Свої сторінки помилок ErrorDocument 403 /errors/403.html ErrorDocument 404 /errors/404.html ErrorDocument 500 /errors/500.html ErrorDocument 504 /errors/504.html
Налаштувати стиснення файлів
# Стиснення для файлів HTML, CSS, JavaScript, Text, XML та шрифтів AddOutputFilterByType DEFLATE application/javascript application/x-javascript application/xml application/xhtml+xml image/svg+xml text/css text/html text/javascript text/plain text/xml
Налаштувати кешування
# Включаємо модуль mod_expires ExpiresActive On # Кеш за замовчуванням — 5 секунд ExpiresDefault "access plus 5 seconds" # Кешувати зображення на місяць ExpiresByType image/x-icon "access plus 2592000 seconds" ExpiresByType image/gif "access plus 2592000 seconds" ExpiresByType image/jpeg "access plus 2592000 seconds" ExpiresByType image/png "access plus 259 # Кешувати HTML та CSS-файли на тиждень ExpiresByType text/css "access plus 604800 seconds" ExpiresByType text/html "access plus 604800 seconds" # Кешувати скрипти на день ExpiresByType text/javascript "access plus 86400 seconds" ExpiresByType application/x-javascript "access plus 86400 seconds"
Змінити параметри PHP
# Час очікування веб-сервера під час виконання скрипту php_value max_execution_time 60
# Максимальний розмір файлу, що завантажується php_value upload_max_filesize 128M
# Виведення помилок PHP в окремий файл php_flag log_errors on php_value error_log /home/username/public_html/php_errors.log
Змінити кореневу папку сайту
RewriteEngine On RewriteCond % !/public RewriteRule ^(.*)$ public/$1 [L]
Якщо .htaccess не працює
Причина №1: .htaccess вимкнено в httpd.conf
Причина №2: Директиву не можна використовувати у .htaccess
# Дозволити у .htaccess всі директиви AllowOverride All # Дозволити в .htaccess тільки директиви груп «Limit» та «FileInfo» AllowOverride Limit FileInfo
# Заборонити всі директиви, крім директив Redirect та RedirectMatch AllowOverride None AllowOverrideList Redirect RedirectMatch # Дозволити групу директив «AuthConfig» # Дозволити директиви CookieTracking та CookieName з групи «FileInfo» AllowOverride AuthConfig AllowOverrideList CookieTracking CookieName
Причина №3: Неправильний синтаксис директиви
Причина №4: Неправильна назва файлу
# Змінити ім'я файлу .htaccess AccessFileName .config
Причина №5: На сервері кілька файлів.
Причина №6: Неправильний порядок директив
Що далі
Редагування .htaccess для безпеки WordPress
Що може робити .htaccess
Зробіть бекап
Як створити .htaccess
Куди додавати зміни
Як редагувати файл .htaccess
1. Захист важливих файлів
2. Закрийте доступ до wp-login.php та wp-admin
Замініть IP Адреса 1 , IP Адреса 2 та IP Адреса 3 на ті IP адреси, з яких ви хочете мати доступ до сторінок wp-login.php та wp-admin.