Контекст: у меня мало / совсем нет опыта работы с 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, что кажется более легким делом!
Вопрос, легко ли это сделать, заключается в том, насколько динамичными должны быть ваши перенаправления. Проще говоря: сколько поддоменов вы хотите поддерживать для этого действия?
Если это ограниченный набор, вы можете использовать простые политики преобразования URL, которые являются формой перезаписи, специально доступной для таких ситуаций.
] Я могу предложить вам другой, более динамичный способ, но он потребует большого количества дополнительного кода. Динамический способ основан на CoreLogic, платформе, которую мы с моим коллегой создали для использования в Citrix NetScaler. Вы можете узнать больше об этом на https://netscalerrocks.com/netscaler/netscaler-core-logic-10-3-changes-enhancements/