Я использую CMS, которая отправляет все запросы в файл index.php с использованием следующего RewriteRule
RewriteRule .* index.php [L]
Однако в разделе новостей сайта CMS генерирует ссылки на новости, подобные этим: /news?month=201106
Я хочу, чтобы мои новостные ссылки были такими: /news/month/201106
, и я достигну этого с помощью PHP-кода.
Я знаю, как добиться переписывания с помощью Apache, если это не такдля этого я бы использовал что-то вроде этого:
RewriteRule ^news/month/(.+)$ news?month=$1
Однако моя проблема в том, что CMS перехватывает вызовы и пытается найти / news / month / 201106, который не может, и выбрасывает уровень CMS 404
Я прочитал о создании исключений, но я не могу понять, как получить:
- Apache, чтобы перехватить переписать, прежде чем он будет отправлен на перехват всех
- CMS для последующей обработки переписанного URL-адреса в обычном режиме (т. Е. Для получения новостей? Month = 201106 и обработки в обычном режиме)
Я уверен, что это, вероятно, связано с флагом перезаписи ипорядок, в котором эти директивы написаныru но я просто не могу заставить его работать.