Netscaler URL переписать

Контекст: у меня мало опыта работы с Netscaler, и я только начинаю его использовать. Одна из первых работ, которые мне дали, - это то, что я подумал, что это будет просто. Мне нужно, чтобы URL http://www.example.com/subdomain/foo/bar перенаправлен на http://subdomain.example.com/foo/bar. Я надеюсь, что профессионал Netscaler просто выбьет этого из парка.

Вот что у меня так далеко:

add rewrite action RW_TEST replace "HTTP.REQ.URL.QUERY.NAME_VALUE(\"www.example.com/subdomain\")" "\"subdomain.example.com\"" -comment "Test redirect"
add rewrite policy RW_POL_TEST "HTTP.REQ.URL.CONTAINS(\"www.example.com/subdomain\")" RW_TEST

Бит / foo / bar должен оставаться нетронутым как часть исходного запроса и конечного пункта назначения - я просто хочу переписать бит субдомена. Если вышеупомянутое выглядит хорошо, пожалуйста, предложите это сделать или предложите улучшения. Надеюсь это понятно.

Насколько я понимаю, это требует привязки к vserver, что, кажется, легче!

1 ответ

Вопрос, легко ли это сделать или нет, заключается в том, насколько динамичными должны быть ваши перенаправления. Говоря простым языком: сколько поддоменов вы хотите поддержать для этого действия?

Если это ограниченный набор, вы можете использовать простые политики преобразования URL, что является формой перезаписи, специально доступной для подобных ситуаций.

Я могу дать вам другой, более динамичный способ, но он потребует много дополнительного кода. Динамический путь основан на CoreLogic, платформе, которую я и мой коллега создали для использования в Citrix NetScaler. Вы можете узнать больше об этом на https://netscalerrocks.com/netscaler/netscaler-core-logic-10-3-changes-enhancements/

Другие вопросы по тегам