2014-09-12 2 views
0

Я хотел бы узнать, есть ли способ (из коробки или нет) знать, какие правила были инициированы для данного запроса. У нас есть webapp, который генерирует конфигурацию urlrewrite, основанную на различных входах (бизнес/технический/и т. Д.), И это может составлять более или менее 2000 правил. Вы можете себе представить, что иногда бывает сложно расшифровать сгенерированную конфигурацию и разработать, какие правила были эффективно инициированы.Tuckey UrlRewrite: знать, какие правила были инициированы по заданному запросу

Если у вас есть какие-либо идеи о том, как достичь этого, пожалуйста, звоните!

+1

Включите протоколирование? –

ответ

0

Вы можете использовать тег «set», чтобы установить значение атрибута запроса для каждого из ваших правил, а затем получить атрибут запроса позже, чтобы узнать, какое правило применяется. Что-то вроде:

<rule> 
    ... 
    <set name="ruleName">My Rule Name</set> 
</rule> 

См http://urlrewritefilter.googlecode.com/svn/trunk/src/doc/manual/4.0/index.html для получения дополнительной документации.

Копирование моего комментария ниже в мой ответ, вы также можете установить заголовки ответа, если вы хотите, чтобы прочитать их на время выполнения:

<rule> 
    ... 
    <set type="response-header" name="ruleName">My Rule Name</set> 
</rule> 
+0

Да. Я думал о чем-то в этом духе. объединить идентификатор правила в атрибуте запроса и вывести его как заголовок http в конце цепочки. слишком плохо, что это не дает что-то из коробки для этого. регистрация не является вариантом, поскольку она не обеспечивает простой способ дифференцировать различные запросы. благодаря! – gvdenbro

+0

Хм ... Вы можете установить ответ-заголовок из коробки. Не можете ли вы просто задать другой заголовок ответа для каждого правила? – Zeki

+0

, что будет иметь большой смысл. Благодарю. не думал об этом :) – gvdenbro

Смежные вопросы