@idiumriobstenu

Как сделать перенаправление запроса на скрипт в apache2?

Есть скрипт, сделан на пхп, работает
Есть устройство которое посылает на сервер вот такой запрос : /subscribe/mac_address (это не гет запрос!)
Надо сделать так, чтобы /subscribe/mac_address перенаправлялось на /subscribe.php/mac_address
RewriteRule ^subscribe$ subscribe.php [NC] работает не как задумано, только так : /subscribe
В чем суть вопроса: прошу подсказать, как построить правило так, что бы /subscribe/mac_address работало.
Сам скрипт это subscribe.php
  • Вопрос задан
  • 46 просмотров
Решения вопроса 1
Lakika
@Lakika
Sicario
RewriteEngine On
RewriteRule ^subscribe/(.*)$ subscribe.php/$1 [L,NC,QSA]


В данном правиле:
RewriteEngine On включает движок mod_rewrite.
^subscribe/(.*)$ является регулярным выражением, которое соответствует любому запросу, начинающемуся с /subscribe/, а за ним следует любой набор символов (захваченных как группа (.*)).
subscribe.php/$1 указывает на файл subscribe.php с путем, который соответствует захваченной группе.
[L,NC,QSA] являются флагами:
L означает "Last" и говорит Apache остановить обработку текущего набора правил и применить текущее.
NC означает "No Case" и делает сравнение регистронезависимым.
QSA означает "Query String Append" и объединяет существующую строку запроса с новой, сгенерированной при перенаправлении.
После добавления данного правила в ваш файл .htaccess, запросы к /subscribe/mac_address должны быть перенаправлены на /subscribe.php/mac_address.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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