Эти две строки:
RewriteCond %{QUERY_STRING} ^p=([0-9]*)
RewriteRule ^ http://www.test.com/?p=%1&preview=true [R=301,L]
Строка запроса начинается с числового значения в качестве цели, которую нужно перенаправить, поэтому она будет переписываться все больше и больше, и вы можете быть более конкретными, так как вы добавлено $
к ^p=([0-9]*)$
, чтобы отделить от нового. измените ваши правила следующим образом:
RewriteCond %{QUERY_STRING} ^p=([0-9]*)$
RewriteRule ^ http://www.test.com/?p=%1&preview=true [R=301,L]
Если это не так, и вам нужно сопоставить эту строку запроса перед тем, как какое-либо правило переписывания просто поместите ее перед этим конкретным шагом.
Примечание: очистить кеш браузера, затем протестировать
Я знаю gettext, и set_locale не ориентирован на многопотоковое исполнение. PHP не должен использоваться с потоковым MPM.
PHP не ориентирован на многопотоковое исполнение все же.
Выполнение PHP, не поточного.
Лучший вопрос мог бы быть, "Следующий код PHP, собирающийся инициировать нарушения прав доступа, если MPM используется?" Или, "Вы испытали нечетное поведение, вероятно, приписанное проблемам параллелизма с помощью следующих функций?"
Иначе это - русская рулетка. При использовании некоторого пакетного приложения оно может работать просто великолепно теперь, но повредить месяц с этого времени, когда новая версия приложения выходит.
Я категорически не рекомендую использование MPM с PHP в целом. Однако, если у Вас есть некоторый маленький код для выполнения, Вы могли бы отправить его, и мы могли сказать Вам, если Вы собираетесь поразить ловушку.