В Azure Application Gateway (стандартный уровень) у меня есть несколько прослушивателей с несколькими сайтами:
listener-one-http (80 с именем хоста www.staging.example.com) basi c rule отправляет traffi c следующему слушателю:
listener-two-https (443 с именем хоста www.staging.example.com) Это правило на основе пути отправляет traffi c к VM-01 или VM-02, если путь содержит «mystore». Apache настроен на обеих этих виртуальных машинах для разных сайтов.
Правила на основе пути:
Name: www.staging.example.com-https-rule
Listener: listener-two-https
Backend pool: VM-01-Pool
Default HTTP settings: HTTPS-Backend
Name, Paths, Backend pool, HTTP setting
store, /mystore/*, VM-02-Pool, HTTPS-Backend
all, /*, VM-01-Pool, HTTPS-Backend
Применяется правило basi c (http to https), но набор правил на основе пути, по-видимому, игнорируется. В моем браузере я ввожу http://www.staging.example.com, и это приводит к https://www.staging.example.com (хорошо), но затем я получаю следующее сообщение (плохо):
You don't have permission to access / on this server.
Есть ли способ отследить, что происходит между шлюзом приложения и Apache, не проверяя виртуальные машины?