Web Мастерская Блог
Сообщество Web Мастеров. Тут собрано всё, чтобы написать свой первый сайт, запустить его в Интернет и поддерживать его в течении всей его работы.
Удалить слеш в конце URL
Вчера написал код, который проверяет есть ли в конце текущего URL слеш (
Сам код:
Если надо удалять слеш только у одно файла, скажем у файла blog.php, то замените условие:
на:
А если требуется обратное - везде слеш удалять, а файл blog.php должен остаться со слешем, то условие будет таким:
Еще один способ удаления слеша в конце URL, при помощи .htaccess:
...
/
) и если есть, удаляет, затем перенаправляет на этот же адрес, но уже без слеша в конце.
Сам код:
# Удаление слеша в конце URL
if (basename(substr($_SERVER['REQUEST_URI'], -1) == '/'))
{
$request_url = rtrim($_SERVER['REQUEST_URI'], '/');
header('Location: https://' . $_SERVER['HTTP_HOST'] . $request_url, true, 301);
exit;
}
Если надо удалять слеш только у одно файла, скажем у файла blog.php, то замените условие:
if (basename(substr($_SERVER['REQUEST_URI'], -1) == '/'))
на:
if (basename($_SERVER['SCRIPT_FILENAME']) == 'blog.php' and substr($_SERVER['REQUEST_URI'], -1) == '/')
А если требуется обратное - везде слеш удалять, а файл blog.php должен остаться со слешем, то условие будет таким:
if (basename($_SERVER['SCRIPT_FILENAME']) != 'blog.php' and substr($_SERVER['REQUEST_URI'], -1) == '/')
Еще один способ удаления слеша в конце URL, при помощи .htaccess:
# Deleting slash
RewriteCond
- Жалоба
- Apache 6
- CMS 3
- CSS 12
- FTP 1
- HTML 10
- JavaScript 32
- MySQL 16
- Nginx 7
- PHP 41
- phpMyAdmin 2
- SVG 3
- URL 1
- XML 3
- Безопасность 4
- Библиотека JS 12
- Графика 1
- Доменное имя 1
- Инструкция 1
- Кодировка 2
- Контент 6
- Мнение 2
- Монетизация сайта 2
- Настройка 3
- Оптимизация 2
- Ошибка 7
- Поисковая система 1
- Продвижение сайта 6
- Софт 1
- Старт 2
- Функция 1
- Хостинг | Сервер 3