In Azure Application Gateway (standard tier), I have a couple of multi-site listeners:
listener-one-http (80 with hostname www.staging.example.com ) The basic rule sends traffic to the following listener:
listener-two-https (443 with hostname www.staging.example.com ) This path-based rule sends traffic to VM-01 or VM-02 if path contains "mystore". Apache is configured on both these VMs for different sites.
Path-based rules are:
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
The basic rule is being enforced (http to https) but the path-based rule set appears to be ignored. In my browser, I enter http://www.staging.example.com and this results in https://www.staging.example.com (good) but then I get the following message (bad):
You don't have permission to access / on this server.
Is there a way to trace what's happening between the application gateway and Apache without checking on the VMs?
If you add a /* rule, it breaks.
Tutorial: Create an application gateway with path-based routing rules using the Azure portal
Note
You do not need to add a custom /* path rule to handle default cases. This is automatically handled by the default backend pool.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.