Якщо ви працюєте з веб-сайтом на сервері Apache, файл .htaccess є одним з найпотужніших інструментів у вашому розпорядженні. Він дозволяє вам керувати поведінкою ваших URL-адрес – від перенаправлень до чистого переписування URL-адрес – без необхідності змінювати конфігурацію вашого сервера.
У цій статті ми розглянемо основи перенаправлення і перезапису URL-адрес за допомогою .htaccess з наочними прикладами і поясненнями.
Що таке файл .htaccess?
.htaccess розшифровується як гіпертекстовий доступ. Це конфігураційний файл, який використовується на веб-серверах на базі Apache і дозволяє вносити зміни в поведінку сервера на рівні каталогів.
Ви можете це зробити:
Перенаправляти трафік з однієї URL-адреси на іншу
Створювати чисті URL-адреси (наприклад, /about замість /about.php)
Обмежити доступ до певних сторінок
Увімкнути HTTPS
І багато іншого
Перенаправлення URL-адрес
1. 301 Постійний перенаправлення
Використовуйте цей параметр, коли сторінка назавжди перемістилася на нову URL-адресу.
2. 302 Тимчасовий перенаправлення
Використовуйте цей параметр, коли перенаправлення є тимчасовим.
3. Перенаправлення за допомогою mod_rewrite
Ви також можете виконати перенаправлення за допомогою RewriteRule:
Перезапис URL-адрес (чисті URL-адреси)
Переписування URL-адрес використовується для того, щоб зробити їх більш зручними для користувачів і пошукової оптимізації. Наприклад, замість
Можеш користуватися:
1. Основне правило рерайтингу
Це повідомляє Apache:
Коли хтось звертається до /product/123
Внутрішньо перепишіть його на product.php?id=123
2. Видаліть розширення .php
Це дозволить користувачам отримати доступ до example.com/about замість example.com/about.php.
Кращі практики
Завжди робіть резервну копію файлу .htaccess перед внесенням змін.
Використовуйте [L], щоб зупинити подальшу обробку правил, якщо знайдено збіг.
Тестуйте перенаправлення за допомогою таких інструментів, як httpstatus.io.
Не змішуйте Redirect і RewriteRule в одному блоці – віддавайте перевагу RewriteRule для узгодженості.
Висновок
Файл .htaccess – це потужний інструмент конфігурації, який дає вам можливість детально контролювати ваш веб-сайт на основі Apache – часто не торкаючись основних файлів вашого сервера. Якщо ви хочете перенаправити застарілі сторінки, впровадити HTTPS, покращити SEO за допомогою чистих URL-адрес або обмежити доступ до конфіденційних областей, .htaccess робить все це можливим за допомогою всього декількох рядків коду.
Розуміння і засвоєння навіть невеликої кількості директив .htaccess може значно покращити продуктивність, безпеку і зручність використання вашого сайту. Це дозволить вам швидко реагувати на зміни в структурі сайту, запобігати непрацюючим посиланням і підтримувати постійний досвід для ваших відвідувачів.
Практичний приклад: Перенаправлення старих URL-адрес на нові
Уявіть, що ви реструктуризували свій блог і хочете перенаправити трафік із застарілої публікації на нову:
Цей простий рядок гарантує це:
Пошукові системи переносять SEO-цінність на нову URL-адресу
Користувачі не потрапляють на сторінку 404
Перенаправлення відбувається миттєво з кодом статусу 301 (постійний)


