.htaccess: повний посібник для SEO

.htaccess: повний посібник для SEO
David Kaufmann
Уроки SEO
7 min read

У SEO ми маємо навчитися керувати певними директивами, щоб комунікувати девелоперу те, що нам потрібно, і забезпечити успішну імплементацію для проєкту.

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

Що таке файл .htaccess?

Файл .htaccess — це скорочення від Hypertext Access. Це файл доступу до гіпертексту, який отримав свою назву від файлу конфігурації директорії на серверах Apache і використовується для збору головних директив сервера.

Назва починається з «.» через системи Unix, де такі файли ідентифікуються як приховані. Тому маємо звертати увагу при перейменуванні його на Windows, щоб уникнути проблем.

Файл створюється локально, зберігається у текстовому форматі (.txt) — ніколи не у Word — і завантажується на сервер через FTP, розміщуючись у папці, де його потрібно використовувати.

Як він працює?

Маємо враховувати поведінку цього файлу та всі його особливості:

  • Поведінка цього файлу ієрархічна щодо дерева директорій сайту, тобто якщо у вас є файл у кореневій директорії сайту, директиви впливатимуть на всі папки. Тож не існує єдиного htaccess; може бути по одному на кожну директорію за потреби.
  • Щоразу, коли користувач заходить на вебсторінку, сервер сканує ці документи й директиви, які вони містять. Тому необхідно, щоб вони були ідеально налаштовані й не містили помилок, аби уникнути інцидентів.
  • Перш ніж робити будь-які зміни, переконайтеся, що ви робите це на копії документа .htaccess, бо якщо погано відредагуєте, потім можуть виникнути проблеми.
  • Коментарі у файлі завжди вводяться через решітку «#».

Як оптимізувати файл htaccess для SEO?

Через певні директиви можемо вказувати, що хочемо попросити сервер робити, і так оптимізувати різні зони. З htaccess можемо:

Перенаправляти піддомен у підпапку

Це буде дуже корисно, коли треба прибрати піддомен і зробити його частиною папки домену. Наприклад: hola.example.com перенаправлено на www.example.com/hola

301 та 302 перенаправлення

У файлі вказуються старі URL разом з тими, на які має йти перенаправлення.

Перенаправлення файлу

Redirect /old-page.html https://www.new-page.html

Захист паролем

Певні зони сайту можна захистити паролем:

Простий захист паролем через .htaccess

AuthType Basic AuthName "Захищена зона" AuthUserFile /<абсолютний шлях до файлу паролів>/.htpasswd AuthPGAuthoritative Off require user User1 User2 User3

Контроль доступу до папок

Через директиви можна керувати доступом (заборонити чи дозволити) до певних папок для всіх користувачів або через конкретний IP:

Файл для регулювання доступу за IP

Order deny,allow Deny from .aol.com Deny from 192.168 Allow from 192.168.220.102

Зазначити головний домен

Використовуючи правило 301 перенаправлення на domain.com або www.domain.com

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www.

RewriteCond %{HTTPS}s ^on(s)|off

RewriteCond http%1://%{HTTP_HOST} ^(https?://)(www.)?(.+)$

RewriteRule ^ %1%3%{REQUEST_URI} [R=301,L]

Перенаправлення на захищену версію

Перенаправлення сайту на захищений протокол:

httpsRewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Змінити сторінку за замовчуванням

На деяких сайтах сторінка за замовчуванням називається /index, що не SEO-friendly. Це можна змінити, щоб вона не показувалася.

DirectoryIndex example-page.php

Збільшити ліміт пам'яті PHP

Використання PHP-додатків має певний ліміт, бо скрипти займають пам'ять на сервері. Використовуючи таку команду, можна збільшити ємність:

Ліміт пам'яті PHP

php_value memory_limit 128M

Змінити часову зону сервера

Можна встановити правильну часову зону такою командою:

#Встановити часову зону за замовчуванням SetEnv TZ America / Washington

Кодування документів

Можна вказувати тип кодування для кожного типу документів. Для кодування UTF-8 треба ввести таку команду:

Вказати кодування символів

AddDefaultCharset utf-8

Примусити кешування вашого сайту

Змінюючи кількість секунд у частоті кешування, ми робимо так, що при відвідуванні нас сторінка завантажується швидше, оскільки більшість елементів, які не були змінені, вже кешовані. Це переважно допомагає покращити завантаження зображень.

<IfModule mod_expires.c> ExpiresActive On ExpiresByType image/gif A432000 ExpiresByType image/jpg A432000 ExpiresByType image/jpeg A432000 ExpiresByType image/png A432000 ExpiresByType image/ico A432000 ExpiresByType image/bmp A432000 ExpiresByType text/css A432000 ExpiresByType text/javascript A432000 ExpiresByType application/javascript A432000 ExpiresByType application/x-javascript A432000 </ifmodule>

Кастомізувати сторінки помилок 404

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

Кастомізоване повідомлення про помилку у локальному розташуванні

ErrorDocument 404 /access-path/404.html Безпека

Через цей файл можна блокувати доступ для певних спам-ботів:

RewriteEngine on

RewriteCond %{HTTP_REFERER} buttons-for-website.com [NC,OR]

RewriteCond %{HTTP_REFERER} darodar.com [NC,OR]

Hotlinking

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

Запобігти hotlinking

RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://your-domain/.*$ [NC] [OR] RewriteCond %{HTTP_REFERER} !^http://www.your-domain/.*$ [NC] [OR] RewriteRule .*.(gif|GIF|jpg|JPG|bmp|BMP|wav|mp3|wmv|avi|mpeg)$ - [F]

Створити дружні URL

Можна прибрати параметри за замовчуванням з URL і замаскувати їх, щоб вони виглядали дружніше і допомагали краще ранжуватися в результатах пошуку. Наприклад: https://www.example.com/index.php?parameter=blog краще виглядає як https://www.example.com/blog

RewriteEngine On

RewriteRule ^shop/([^/])/([^/])/$ /index.php?category=$1&product=$2 [L]

Стискайте файли для покращення серфінгу

Через правило в htaccess можна стискати js, css, html і текстові файли вашого сайту, щоб під час завантаження вони займали менше місця. Це зробить так, що мобільні користувачі споживатимуть менше даних під час серфінгу. Згадаймо важливість WPO для SEO!

<ifmodule> AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript </ifmodule>

Стиснення Gzip

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

AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4.0[678] no-gzip BrowserMatch bMSIE !no-gzip !gzip-only-text/html

Запобігання індексації файлів

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

<Files ~ «.pdf$»>

Header set X-Robots-Tag «noindex, follow»

</Files>

Увімкнення Keep-Alive

Увімкнення цього дозволяє постійне з'єднання із сервером замість початку з'єднання щоразу при завантаженні сторінки. З keep-alive забезпечуємо швидкі завантаження сайту.

<ifModule mod_headers.c> Header set Connection keep-alive </ifModule> Тепер, коли ви побачили всі можливості, які маєте з файлом htaccess, ви вільні їх імплементувати. Ці правила дійсні незалежно від того, маєте ви WordPress як CMS, власний код чи будь-яку іншу систему.

Правда, що якщо у вас проєкт на WordPress, ваше життя буде простішим, оскільки можна редагувати файл htaccess безпосередньо в редакторі. Тим не менш, будьте дуже обережні, бо це не просто черговий плагін, і дуже легко зламати сайт! Ми розкажемо, як це робити!

Редагування файлу htaccess у WordPress

Якщо використовуєте WordPress, рекомендуємо встановити плагін Rank Math, який дозволить редагувати його легко й швидко.

Треба просто перейти до Rank Math > General Settings > Edit .htaccess

Файл Htaccess WordPress
Файл Htaccess WordPress

Редагування файлу htaccess з WordPress дуже просте, тож пам'ятайте про обережність!

У вас лишилися запитання? Залиште нам коментар, і ми із задоволенням гляньмо!

Використані джерела:

- CDmon: Інформація та використання файлу .htaccess - Computerhoy: Що таке .htaccess, для чого він і фундаментальні коди - Ionos: Десять трюків з конфігурації .htaccess, які кожен має знати - HelpOne: Що таке .htaccess? - Hostinger: Що таке файл .htaccess?

Автор: David Kaufmann

David Kaufmann

Останні 10+ років я повністю занурений у SEO — і чесно кажучи, не хотів би інакше.

Моя кар'єра вийшла на новий рівень, коли я працював старшим SEO-спеціалістом у Chess.com — одному зі 100 найвідвідуваніших сайтів у всьому інтернеті. Робота в такому масштабі навчила мене того, чого не дав би жоден курс чи сертифікат.

З цього досвіду я заснував SEO Alive — агенцію для брендів, які серйозно ставляться до органічного зростання. І оскільки не знайшов інструмента, що добре справляється з обома світами — класичним і AI, побудував SEOcrawl. Якщо ви шукаєте досвідченого SEO-партнера, який любить цю справу — буду радий поговорити!

→ Читайте всі статті від David
Більше статей: David Kaufmann

Дізнайтесь більше контенту цього автора