Мне нужно перенаправить трафик с:
example.com/profilepage.php?profileid=123456
в
example.com/profile-page.php?profileid=123456
Замечания: Единственное отличие — это новый дефис
Я попробовал несколько вариантов без удачи, в том числе
RewriteRule ^/?profilepage.php?profileid=([^/]+)/?$ /profile-page.php?profileid=$1 [L,QSA]
RewriteRule ^/?profilepage.php?profileid=([^/]+)/$ /profile-page.php?profileid=$1 [L,QSA]
RewriteRule ^/?profilepage.php?profileid=([^/]+) /profile-page.php?profileid=$1 [L,QSA]
Как вы можете видеть, я не уверен, что делать ПОСЛЕ профиля регулярного выражения
Попробуйте что-то вроде этого. Вы должны явно соответствовать QUERY_STRING
Проблемы:
1. Вы должны сопоставить строку запроса с
%{QUERY_STRING}
2. Измените свое регулярное выражение от этого
([^/]+)
в(\d+)
Замечания:
Убедитесь, что ваш соответствующий идентификатор находится в
%1
вместо$1
Вы можете проверить это .htaccess
Вот
RewriteEngine on
RewriteCond %{QUERY_STRING} ^profileid=(\d+)$
RewriteRule ^profilepage\.php$ /profile-page.php?profileid=%1 [L,R]
Не нужно проверять строку запроса, по умолчанию она остается неизменной.
Ты можешь использовать:
RewriteEngine on
RewriteRule ^profilepage\.php$ profile-page.php [NC,L,R=301]