Как убрать слэш в конце URL в файле htaccess?

Речь идёт не про адрес в браузере, а про адрес, отдаваемый в скрипт-обработчик. С помощью htaccess я сделал так, чтобы по адресу в браузере "site.ru/profile/login/" в обработчик отдавался адрес "site.ru/index.php?page=profile&action=login".

За это отвечает код в htaccess:
RewriteRule ^profile/([A-Za-z0-9-/]+)$ index.php?page=profile&action=$1 [L]


Только когда уже в скрипте извлекаю параметры с помощью $_GET, получается, что $_GET['page'] выдаёт "profile" (этот параметр прописан вручную), а $_GET['action'] (формируется переменной htaccess) выдаёт "login/" вместе со слэшем на конце. Я, конечно, могу его убрать в скрипте при помощи str_replace, но хотелось бы более элегантного решения.

В интернете я нашёл множество статей с инструкциями для htaccess, как убрать слэши одинарные и множественные в конце URL, но это происходит и в строке браузера тоже. То есть, в браузере должно быть так "site.ru/profile/login/", а не так "site.ru/profile/login".

Можно ли как-то поправить htaccess, чтобы в $_GET['action'] пришло "login", а не "login/"?
  • Вопрос задан
  • 31 просмотр
Решения вопроса 1
@dodo512
RewriteRule ^profile/([A-Za-z0-9-]+)/$ index.php?page=profile&action=$1 [L]
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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