clean_code
@clean_code
Программист-сис.админ

Как убрать первый слэш после URL адреса?

Доброе время суток.
Использую PHP роутинг.
htaccess:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?route=$1 [B,L,QSA]

И никак не получается убрать двойные(тройные и т.д.) слеши сразу после адреса сайта.
К примеру site.ru/article////page/5 в GET['route'] получим article////page/5 и роутер перенаправит на site.ru/article/page/5
А вот site.ru////article/page/5 Уже никуда не перенаправит так как в GET['route'] параметре придёт article/page/5 и соответственно перенаправления не произойдёт
Никто не поможет советом.
  • Вопрос задан
  • 183 просмотра
Решения вопроса 1
@dodo512
RewriteCond %{THE_REQUEST} //
RewriteRule ^(.*)$ /$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?route=$1 [B,L,QSA]
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
By_Engine
@By_Engine
Если юзер сам вбивает в адресную строку урл со всяким мусором, то нужно ему ломать руки отдавать ошибку 404
Ответ написан
Комментировать
mustang_shelby
@mustang_shelby
i like (*_metallica_*)
можно сделать проверку в index.php к примеру - использовать функции trim ( много разных видео об этом )
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы