Як видалити / додати слеш в кінці url через .htaccess

Як видалити / додати слеш в кінці URL через .htaccess

Відео: .htaccess MOD_REWRITE Tutorial

Напевно, багато хто з Вас розуміють, що в більшості випадків "https://mysite.ru/dir"І"https://mysite.ru/dir/"Відкриють одне й те саме. Але це лише в більшості випадків, а не завжди. Якщо йде обробка REQUEST_URI через PHP, то там може мати величезне значення наявність або відсутність слеша в кінці URL. І дуже важливо привести весь сайт до єдиного стандарту, щоб було або з слешем на кінці, або без. Ось як видалити слеш на кінці URL через .htaccess, а також як його додати, я розповім в цій статті.

Я приведу 2 коду, один завжди видаляє слеш на кінці URL, а інший завжди додає. Почнемо з 1-го варіанти:

Відео: Codeigniter 3 Tutorial 1 - remove index.php from url using .htaccess

RewriteEngineOn
RewriteBase/
RewriteCond% {HTTP_HOST}(. *)
RewriteCond% {REQUEST_URI}/$ [NC]
RewriteRule^ (. *) (/)$ $ 1 [L,R=301]



Тепер якщо користувач введе "https://mysite.ru/dir/"Його автоматично перенаправить на"https://mysite.ru/dir". Зрозуміло, все GET-параметри збережуться. Наприклад, якщо користувач вводив: "https://mysite.ru/dir/?a=5b=7", То його перенаправить за такою адресою"https://mysite.ru/dir?a=5b=7".

Відео: PHP - How to get pretty or clean urls / links using HTACCESS - Full Tutorial




А зараз давайте розглянемо варіант, коли нам обов`язково потрібен слеш в кінці URL, тобто щоб при введенні "https://mysite.ru/dir"Був автоматичний перехід на"https://mysite.ru/dir/":

RewriteEngineOn
RewriteBase/
RewriteCond% {REQUEST_FILENAME}!-f
RewriteCond% {REQUEST_URI}!(. *) /$
RewriteRule^ (. * [^ /])$ $ 1/[L,R=301]

З цим кодом в .htaccess слеш буде додаватися автоматично в кінці URL.

Тепер Ви знаєте, як видаляти і додавати слеш в кінці URL через .htaccess. І Вам потрібно лише визначитися, який варіант Вам більше подобається, тому що ніякої принципової різниці між ними немає.

Поділися в соціальних мережах:

Схожі
Використання rewritecond в mod_rewriteВикористання rewritecond в mod_rewrite
Як зробити 2 домену на 1 сайтЯк зробити 2 домену на 1 сайт
Налаштування часового поясу через htaccessНалаштування часового поясу через htaccess
Використання directoryindex в .htaccessВикористання directoryindex в .htaccess
Чи варто використовувати gzipЧи варто використовувати gzip
Сайт з www і безСайт з www і без
Трохи про те, що таке слеш?Трохи про те, що таке слеш?
Скорочення url-адреси на phpСкорочення url-адреси на php
Як створити файл .htaccessЯк створити файл .htaccess
Як задати кодування в htaccessЯк задати кодування в htaccess
» » Як видалити / додати слеш в кінці url через .htaccess