Ошибка перезаписи косой черты в шлюзе приложений Azure

Мы создали шлюз приложений Azure, используя правила на основе путей для перенаправления запросов клиентов на серверы в фоновом пуле на основе имени экземпляра клиента, например:

"/client1/*" -> Server1
"/client2/*" -> Server2
"/client3/*" -> Server1

Когда мы делаем запросы к http://mygateway.azure.com/client1/, он работает нормально. а Server1 возвращает ожидаемую страницу. Но когда я пропустил конечную косую черту /, например http://mygateway.azure.com/client1, Server1 не может быть найден, и страница не возвращается. Похоже, что шлюз приложений не может разрешить URL-адрес во время операции перезаписи.

Я пробовал серьезные настройки пути в ApplicationGatewayBackendHttpSettings, такие как «/client1», «/client1/*» и «/client1*», но это не сработало.

У вас когда-нибудь возникала эта проблема?

Tks


person jmoser    schedule 23.05.2018    source источник
comment
Это могло быть связано с проблемой перенаправления в конце косой черты, указанной в этой проблеме -ссылка   -  person Chaithu Narayana    schedule 03.06.2021


Ответы (1)


Шлюз приложений Azure в настоящее время не поддерживает перезапись URL-адресов, , но мы планируем добавить эту функцию в будущем.

При создании правила маршрутизации URL-адресов каждое из них должно начинаться с /, и единственное место, где допускается использование «*», - это конец, следующий за «/». Строка, передаваемая в средство сопоставления пути, не содержит текста после первого? или #, и эти символы здесь не разрешены.

Скорее всего, вы укажете точную страницу или файл, к которому вы хотите получить доступ.

person TravisCragg_MSFT    schedule 23.05.2018
comment
Теперь доступна функция перезаписи URL - docs. microsoft.com/en-us/azure/application-gateway/ - person Chaithu Narayana; 03.06.2021