Шлюз приложений Azure с веб-приложением службы приложений

Я создал шлюз приложений с WAF (режим обнаружения по умолчанию) в группе ресурсов Azure (без ASE) с членом / целью backendPool веб-приложения службы приложений ссылка MS (следуйте инструкциям в письме как через портал Azure, так и через PowerShell).

Я не использую никаких пользовательских доменов, только базовая конфигурация с моим членом backendPool, являющимся веб-приложением Azure, то есть mywebapp.azurewebsites.net (веб-приложение - это базовый тестовый сайт ASP.NET, который отлично работает на его адресе .azurewebsites.net).

В документации по шлюзу приложений MS указано, что теперь они поддерживают службы приложений в качестве целей backendPool (FQDN / которое я использую).

Насколько мне известно, мои базовые httpSettings, базовый слушатель и правило настроены правильно (HTTP-порт 80.

По сути, мой шлюз приложений должен прослушивать порт 80 подключенного к нему общедоступного IP-адреса и пересылать любые входящие запросы члену backendPool (веб-приложение).

Но когда я пытаюсь получить доступ к общедоступному IP-адресу шлюза (или DNS-адресу), я продолжаю получать сообщение «Веб-сайт Azure 404 не найден». страница / ошибка.

Как ни странно, если я останавливаю веб-приложение на портале Azure, я получаю ошибку 502 / плохой шлюз, пока я не перезапущу веб-приложение, из которого возвращается страница 404.

Я не знаю, упустил ли я что-нибудь здесь? Есть ли у кого-нибудь какие-нибудь предложения? Я не могу заставить это работать.


person cty    schedule 02.03.2018    source источник


Ответы (1)


Вероятно, вам не хватает пары элементов конфигурации. В настройках серверного http должен быть установлен флаг PickHostNameFromBackendAddress. Вы также должны использовать настраиваемый зонд с установленным флагом PickHostNameFromBackendHttpSettings. Полная документация по PowerShell находится по адресу ссылка, в которой подробно описан ваш сценарий.

person amsriva-msft    schedule 12.03.2018
comment
Мне пришлось использовать PowerShell, я думал, что уже пробовал это, но предоставленная вами ссылка сработала - спасибо! - person cty; 04.04.2018
comment
Вы только что помогли мне решить проблему, которая возникла у меня пару дней, спасибо! - person Gowiem; 28.06.2018
comment
Спасибо, это сработало для меня (шлюз приложений перед веб-приложением работал через PowerShell, но не при настройке через портал). Флаг «PickHostNameFromBackendAddress» не включен по умолчанию на портале? - person aazeem; 28.08.2018
comment
но в моем случае у моего веб-приложения есть сертификат ssl, поэтому мне нужно втирать его в https и порт 443, а не на http и порт 80, так как я могу это сделать ???? - person Sayed Azharuddin; 05.09.2018
comment
Ошибка в графическом интерфейсе портала Azure. После установки флажка «Выбрать имя хоста из внутреннего адреса» и нажатия кнопки «Сохранить» оно фактически не сохраняется. Пришлось делать это вручную с помощью PowerShell. Он сопоставлен с полем PickHostNameFromBackendAddress. Я использую уровень WAF. Как ни странно, я попытался использовать уровень WAF V2, и у него не было этой постоянной проблемы. - person Frank Fu; 16.10.2018
comment
Дальнейшие выводы: я заметил, что если вы создаете пробу работоспособности и прикрепляете ее к backendhttpsetting, тогда флаг PickHostNameFromBackendAddress фактически сохраняется при сохранении. - person Frank Fu; 18.10.2018