Введення в експлуатацію mod_rewrite
В даному уроці пояснюється, що таке mod_rewrite і як його використовувати. Описуються три практичних прикладу: перенаправлення 301, створення дружніх URL і блокування використання посилань на зображення.
mod_rewrite - це чудовий модуль веб сервера Apache. Він дуже гнучкий і може виконувати багато корисних функцій.
Використання mod_rewrite може становити певні труднощі для новачків через складного синтаксису і механізму обробки. Однак, варто розібратися в декількох базових концепціях і можна буде ефективно використовувати mod_rewrite для власного сервера.
В даному уроці ми навчимося створювати кілька базових правил mod_rewrite на реальних прикладах, які можна буде використовувати для власного сайту. Рекомендується ретельно вивчити матеріал про регулярні вирази. якщо ви ще не знаєте що це таке.
Що таке mod_rewrite?
Хоча за допомогою модуля mod_rewrite можна виконувати і перенаправлення HTTP і ще багато інших функцій, таких як повернення кодів помилки HTTP.
Що можна робити за допомогою mod_rewrite
Ось кілька звичайних функцій, які виконує mod_rewrite:
Як використовувати mod_rewrite
Для використання mod_rewrite, потрібно створити директиви Apache для вказівки модулю, що потрібно робити. Директиви - це прості конфігураційні установки. Часто директиви розміщуються у файлі .htaccess в кореневій папці вашого веб сайту. Директиви застосовуються для всього сайту.
Дві найважливіших директиви mod_rewrite:
В даному файлі задаються такі налаштування:
RewriteEngine on - включаємо механізм mod_rewrite
Якщо ви отримуєте помилку 404, то ймовірно на вашому хостингу не використовується mod_rewrite. В даному випадку треба звернутися до адміністратора хостингу.
Як працює RewriteRule
Ви можете використовувати директиву RewriteRule для створення правил перенаправлення. Узагальнений синтаксис директиви має вигляд:
Кілька прикладів використання mod_rewrite
Найпростіший спосіб пояснити mod_rewrite - показати його використання при вирішенні практичних завдань.
Приклад 1: виключення помилки 404
Правило RewriteRule працює так:
Опис правила RewriteRule.
Приклад 3: запобігаємо використання посилань на зображення на вашому сайті
Інший сайт може посилатися на своїх сторінках прямо на вашу фотографію наступним чином:
Це означає, що чужий сайт не тільки "запозичує" ваше зображення, але використовує частину трафіку вашого сервера для відображення зображення на своїх сторінках. І якщо чужий сайт має великий потік відвідувачів, то такий стан стане проблемою!
Ви можете використовувати наступні директиви mod_rewrite для того, щоб припинити використання посилань на зображення усіма іншими сайтами, крім вашого власного. Додайте нижче наведений код в файлі .htaccess в кореневому каталозі вашого сайту або в папці з зображеннями, які треба захистити. Змініть example.com на ім'я вашого домену.
Як тільки ви закінчите виконувати всі операції копіювання будь-який браузер. запитувач зображення з вашого сайту використовує при запиті URL, що починається з імені домена, відмінного від www.example.com або example.com. отримуватиме помилку "403 Forbidden". що зупинить використання посилань на ваші зображення на інших сайтах.
Ось як працює цей набір правил:
висновок
AntiBuger. впливає в позитивну сторону, переробити для знає і розуміє - не проблема. Чому на цьому сайті спосіб не застосований - напевно питання часу, тому що блог evgeniypopov.com вже використовує mod-rewrite. Неботов: дружні урли - в основному для пошукових систем, з приводу ледачих - є більш Вижній речі, такі як контент сайту (наприклад)
truehazard
semen_orlov
ruslankonev
serafim_urukov
Спасибі гігантське. Завдяки вам я розібрався з ЧПУ.
jorikvartanov
ось що цікаво, без прапора 301 через RewriteRule контрольний вагу передається.
phantom12345
Profkomfort
АлександрАсланьян
За рахунок отримання інформації відразу по двох каналах (зір і слух) ефективність навчання значно перевершує навчання по книгах. А домашні завдання і онлайн-тести дозволять вам постійно думати на мові, що вивчається і відразу перевіряти свої знання!
Якщо ви давно хочете як слід вивчити HTML, то у мене для Вас є чудова новина!
Якщо ви вже вивчили HTML і хочете рухатися далі, то наступним кроком буде вивчення технології CSS.
Якщо ви хочете розібратися з поняттями домену і хостингу, навчитися створювати бази даних, закачувати файли сайту на сервер по FTP, створювати піддомени, налаштовувати поштові скриньки для свого сайту і стежити за його відвідуваністю, то цей курс створений спеціально для вас!