2011-02-28 2 views
0

В настоящее время у нас есть более чем 450 правил перезаписи в нашей конфигурации Apache, охватывающей 4 разных файла. Как вы можете себе представить, они жизненно важны для работы нашего сайта.Какие инструменты или методы доступны для управления большими наборами правил перезаписи для Apache?

Мы, конечно, проверяем все правила, которые мы добавляем, используем их в git и гарантируем, что они поддерживают правильный порядок, чтобы не наступать друг на друга, но с растущим набором правил из-за полной занятости продукта, вероятно, это число будет только увеличиваться.

Какие инструменты и/или методы вы используете для поддержания этой жизненно важной (и потенциально опасной) конфигурации? Какие гарантии вы должны обеспечить, чтобы неправильно разработанное правило перезаписи не случайно доставало большие части вашего сайта?

+1

Во-первых, попробуйте задать свой вопрос на [serverfault] (http://serverfault.com/), там есть администраторы Apache, у которых, вероятно, будут лучшие ответы. Теперь, с точки зрения программирования, я бы воспользовался исчерпывающим набором веб-тестов (включая тесты на проникновение для * потенциально опасных URI). Все коммиты будут перенесены на промежуточный сервер для тестирования, и только фиксации, которые пройдут, все тесты будут разрешены. –

+0

Это хороший вопрос о запросе на serverfault - я об этом не думал, так как я никогда ничего не просил. – apg

ответ

0

Поскольку мы столкнулись с проблемой, мы исследовали способы поддержания больших наборов правил. На самом деле для этого нет реального инструмента. Но могут быть некоторые способы помочь вам сократить/поддерживать RWR.

  • Попробуйте использовать когерентную схему URL, которая может быть переведена в программную логику. При этом вы можете использовать Routing Controller, например, Symfony 2
  • Возможно, вы можете сконденсировать набор правил с помощью Apache's RewriteMap.
  • Используйте TestNG и Xenus Link Sleuth на тестовых этапах, чтобы узнать, работают ли ваши правила. Поэтому каждое правило должно иметь собственный тест.
  • Отлаживайте свои правила с помощью apache rewrite log.
  • Стук по дереву.
Смежные вопросы