Как мне использовать mod_rewrite для изменения пути и имени файла URL-адреса
-
01-07-2019 - |
Вопрос
Я хочу взять URL-адрес:http://www.mydomain.com/signup-12345
И на самом деле дать им:http://www.mydomain.com/signup/?aff=12345
У меня НЕТ истории с mod_rewrite, ПОМОГИТЕ!
Решение
Что-то, что мне было относительно трудно выяснить, так это то, как сделать обратное тому, что вы делаете, когда вам нужно узнать значение части строки запроса.
Так, например:
Если вы хотите переписать URL-адрес:http://www.example.com/signup-Старый-сценарий.аспид?афф=12345
Для:http://www.example.com/signup-новое-сценарий.php?аффИД=12345
вы могли бы использовать:
RewriteCond %{query_string}& ^aff=((.+&)|&)$
RewriteRule ^/signup-old-script.asp$ /signup-new-script.php?affID=%2 [L,R]
Обратите внимание на % войдите в правило перезаписи вместо $ подписать.
Я должен был сделать это, чтобы я мог поддерживать старые флэш-карты на новом сайте, на котором были ссылки на файлы ".cfm" с идентификатором в строке запроса.
Другие советы
Попробуй это :
RewriteRule ^/регистрация-(\d+)/$ /регистрация/?aff=$1 [I]
Насколько я знаю,
флаг приводит к игнорированию RewriteCond. - для "Игнорировать случай" - из IsapiRewrite
версия 2