You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/api-management/api-management-howto-developer-portal-customize.md
+5-3Lines changed: 5 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ author: dlepow
6
6
7
7
ms.service: azure-api-management
8
8
ms.topic: tutorial
9
-
ms.date: 03/29/2024
9
+
ms.date: 04/28/2025
10
10
ms.author: danlep
11
11
ms.custom: engagement-fy23
12
12
---
@@ -28,7 +28,7 @@ In this tutorial, you learn how to:
28
28
29
29
For more information about developer portal features and options, see [Azure API Management developer portal overview](developer-portal-overview.md).
30
30
31
-
:::image type="content" source="media/api-management-howto-developer-portal-customize/cover.png" alt-text="Screenshot of the API Management developer portal - administrator mode." border="false":::
31
+
:::image type="content" source="media/api-management-howto-developer-portal-customize/cover.png" alt-text="Screenshot of the API Management developer portal - administrator mode." :::
32
32
33
33
## Prerequisites
34
34
@@ -49,6 +49,8 @@ Follow these steps to access the managed version of the developer portal.
49
49
It might take a few minutes to enable the developer portal.
50
50
1. In the left menu, under **Developer portal**, select **Portal overview**. Then select the **Developer portal** button in the top navigation bar. A new browser tab with an administrative version of the portal will open.
@@ -70,7 +72,7 @@ You'll want to use your own images and other media content in the developer port
70
72
71
73
A placeholder logo is provided in the top left corner of the navigation bar. You can replace it with your own logo to match your organization's branding.
72
74
73
-
1. In the developer portal, select the default **Contoso**logo in the top left of the navigation bar.
75
+
1. In the developer portal, select the default logo in the top left of the navigation bar.
74
76
1. Select **Edit**.
75
77
1. In the **Picture** pop-up, under **Main**, select **Source**.
76
78
1. In the **Media** pop-up, select one of the following:
The pre-provisioned content in the developer portal showcases pages with commonly used features. Find them on the **Pages** panel. You can modify the content of these pages or add new ones to suit your needs.
81
82
82
-
### Layouts and pages
83
-
84
-
Layouts define how pages are displayed. For example, in the default content, there are two layouts: one applies to the home page, and the other to all remaining pages. You can modify these layouts and add more layouts to suit your needs.
83
+
Select **Layouts** on the **Pages** panel to define how pages are displayed. The developer portal comes with a default layout that's applied to the pages. You can modify this layout and add more layouts to suit your needs.
85
84
86
85
A layout gets applied to a page by matching its URL template to the page's URL. For example, a layout with a URL template of `/wiki/*` is applied to every page with the `/wiki/` segment in the URL: `/wiki/getting-started`, `/wiki/styles`, etc.
87
86
88
87
In the following image, content belonging to the layout is outlined in blue, while the page-specific content is outlined in red.
89
88
90
89
:::image type="content" source="media/developer-portal-overview/pages-layouts.png" alt-text="Screenshot of layout content in the developer portal." :::
91
90
92
-
The pre-provisioned content in the developer portal showcases pages with commonly used features. You can modify the content of these pages or add new ones to suit your needs.
93
-
94
91
> [!NOTE]
95
92
> Due to integration considerations, the following pages can't be removed or moved under a different URL: `/404`, `/500`, `/captcha`, `/change-password`, `/config.json`, `/confirm/invitation`, `/confirm-v2/identities/basic/signup`, `/confirm-v2/password`, `/internal-status-0123456789abcdef`, `/publish`, `/signin`, `/signin-sso`, `/signup`.
96
93
@@ -248,7 +245,8 @@ To restore a previous portal revision:
248
245
If you want to discard all changes you've made to the developer portal, you can reset the website to its starting state. Resetting the portal deletes any changes you've made to the developer portal pages, layouts, customizations, and uploaded media.
249
246
250
247
> [!NOTE]
251
-
> Resetting the developer portal doesn't delete the published version of the developer portal.
248
+
> * Resetting the developer portal doesn't delete the published version of the developer portal.
249
+
> * Resetting the portal could update the portal to a newer version of the developer portal codebase with updated components. The placeholder content that appears might also be changed. Developer portal features and customization options remain consistent.
Copy file name to clipboardExpand all lines: articles/app-service/app-service-hybrid-connections.md
+10-3Lines changed: 10 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ description: Learn how to create and use hybrid connections in Azure App Service
4
4
author: madsd
5
5
ms.assetid: 66774bde-13f5-45d0-9a70-4e9536a4f619
6
6
ms.topic: article
7
-
ms.date: 04/10/2025
7
+
ms.date: 04/29/2025
8
8
ms.author: madsd
9
9
ms.custom: "UpdateFrequency3, fasttrack-edit"
10
10
#customer intent: As an app developer, I want to understand the usage of Hybrid Connections to provide access to apps in Azure App Service.
@@ -237,10 +237,10 @@ The status of **Connected** means that at least one HCM is configured with that
237
237
238
238
:::image type="content" source="media/app-service-hybrid-connections/hybrid-connections-service-bus-endpoint.png" alt-text="Screenshot of Hybrid Connection Service Bus endpoint.":::
239
239
240
-
- The Service Bus gateways are the resources that accept the request into the Hybrid Connection and pass it through the Azure Relay. You need to allowlist all 128 of the gateways. The gateways are in the format: `G#-prod-[stamp]-sb.servicebus.windows.net`. The number sign, `#`, is a number between 0 and 127 and `stamp` is the name of the instance within your Azure data center where your Service Bus endpoint exists.
240
+
- The Service Bus gateways are the resources that accept the request into the Hybrid Connection and pass it through the Azure Relay. You need to allowlist all of the gateways. The gateways are in the format: `G#-prod-[stamp]-sb.servicebus.windows.net` and `GV#-prod-[stamp]-sb.servicebus.windows.net`. The number sign, `#`, is a number between 0 and 127 and `stamp` is the name of the instance within your Azure data center where your Service Bus endpoint exists.
241
241
242
242
- If you can use a wildcard, you can allowlist *\*.servicebus.windows.net*.
243
-
- If you can't use a wildcard, you must allowlist all 128 gateways.
243
+
- If you can't use a wildcard, you must allowlist all 256 of the gateways.
244
244
245
245
You can find out the stamp using *nslookup* on the Service Bus endpoint URL.
246
246
@@ -255,6 +255,13 @@ The status of **Connected** means that at least one HCM is configured with that
255
255
...
256
256
G126-prod-sn3-010-sb.servicebus.windows.net
257
257
G127-prod-sn3-010-sb.servicebus.windows.net
258
+
GV0-prod-sn3-010-sb.servicebus.windows.net
259
+
GV1-prod-sn3-010-sb.servicebus.windows.net
260
+
GV2-prod-sn3-010-sb.servicebus.windows.net
261
+
GV3-prod-sn3-010-sb.servicebus.windows.net
262
+
...
263
+
GV126-prod-sn3-010-sb.servicebus.windows.net
264
+
GV127-prod-sn3-010-sb.servicebus.windows.net
258
265
259
266
If your status says **Connected** but your app can't reach your endpoint then:
Copy file name to clipboardExpand all lines: articles/app-service/overview-access-restrictions.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -67,7 +67,7 @@ Service endpoints allow you to lock down *inbound* access to your app so that th
67
67
> [!NOTE]
68
68
> Access restriction rules based on service endpoints are not supported on apps that have private endpoint configured or apps that use IP-based SSL ([App-assigned address](./networking-features.md#app-assigned-address)).
69
69
70
-
To learn more about configuring service endpoints with your app, see [Azure App Service access restrictions](../virtual-network/virtual-network-service-endpoints-overview.md).
70
+
To learn more about configuring service endpoints with your app, see [Azure Virtual Network service endpoints](../virtual-network/virtual-network-service-endpoints-overview.md).
Copy file name to clipboardExpand all lines: articles/application-gateway/application-gateway-troubleshooting-502.md
+12-12Lines changed: 12 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ services: application-gateway
5
5
author: greg-lindsay
6
6
ms.service: azure-application-gateway
7
7
ms.topic: troubleshooting
8
-
ms.date: 05/19/2023
8
+
ms.date: 04/29/2025
9
9
ms.author: greglin
10
10
ms.custom: devx-track-azurepowershell
11
11
---
@@ -87,9 +87,9 @@ The following table lists the values associated with the default health probe:
87
87
88
88
### Solution
89
89
90
-
* Host value of the request will be set to 127.0.0.1. Ensure that a default site is configured and is listening at 127.0.0.1.
90
+
* Host value of the request is set to 127.0.0.1. Ensure that a default site is configured and is listening at 127.0.0.1.
91
91
* Protocol of the request is determined by the BackendHttpSetting protocol.
92
-
* URI Path will be set to */*.
92
+
* URI Path is set to */*.
93
93
* If BackendHttpSetting specifies a port other than 80, the default site should be configured to listen at that port.
94
94
* The call to `protocol://127.0.0.1:port` should return an HTTP result code of 200. This code should be returned within the 30-second timeout period.
95
95
* Ensure the configured port is open and there are no firewall rules or Azure Network Security Groups blocking incoming or outgoing traffic on the port configured.
@@ -130,7 +130,7 @@ Validate that the Custom Health Probe is configured correctly, as shown in the p
130
130
131
131
### Cause
132
132
133
-
When a user request is received, the application gateway applies the configured rules to the request and routes it to a backend pool instance. It waits for a configurable interval of time for a response from the backend instance. By default, this interval is **20** seconds. In Application Gateway v1, if the application gateway doesn't receive a response from backend application in this interval, the user request gets a 502 error. In Application Gateway v2, if the application gateway doesn't receive a response from the backend application in this interval, the request will be tried against a second backend pool member. If the second request fails the user request gets a 504 error.
133
+
When a user request is received, the application gateway applies the configured rules to the request and routes it to a backend pool instance. It waits for a configurable interval of time for a response from the backend instance. By default, this interval is **20** seconds. In Application Gateway v1, if the application gateway doesn't receive a response from backend application in this interval, the user request gets a 502 error. In Application Gateway v2, if the application gateway doesn't receive a response from the backend application in this interval, the request is tried against a second backend pool member. If the second request fails the user request gets a 504 error.
134
134
135
135
### Solution
136
136
@@ -192,17 +192,17 @@ If all the instances of BackendAddressPool are unhealthy, then the application g
192
192
193
193
Ensure that the instances are healthy and the application is properly configured. Check if the backend instances can respond to a ping from another VM in the same VNet. If configured with a public end point, ensure a browser request to the web application is serviceable.
194
194
195
-
## Upstream SSL certificate does not match
195
+
## Upstream SSL certificate doesn't match
196
196
197
197
### Cause
198
198
199
-
The TLS certificate installed on backend servers does not match the hostname received in the Host request header.
199
+
The TLS certificate installed on backend servers doesn't match the hostname received in the Host request header.
200
200
201
-
In scenarios where End-to-end TLS is enabled, a configuration that is achieved by editing the appropriate "Backend HTTP Settings", and changing there the configuration of the "Backend protocol" setting to HTTPS, it is mandatory to ensure that the CNAME of the TLS certificate installed on backend servers matches the hostname coming to the backend in the HTTP host header request.
201
+
In scenarios where End-to-end TLS is enabled, a configuration that is achieved by editing the appropriate "Backend HTTP Settings", and changing there the configuration of the "Backend protocol" setting to HTTPS, it's mandatory to ensure that the DNS NAME of the TLS certificate installed on backend servers matches the hostname coming to the backend in the HTTP host header request.
202
202
203
-
As a reminder, the effect of enabling on the "Backend HTTP Settings" the option of protocol HTTPS rather than HTTP, will be that the second part of the communication that happens between the instances of the Application Gateway and the backend servers will be encrypted with TLS.
203
+
As a reminder, the effect of enabling on the "Backend HTTP Settings" the option of protocol HTTPS rather than HTTP, is that the second part of the communication that happens between the instances of the Application Gateway and the backend servers are encrypted with TLS.
204
204
205
-
Due to the fact that by default Application Gateway sends the same HTTP host header to the backend as it receives from the client, you will need to ensure that the TLS certificate installed on the backend server, is issued with a CNAME that matches the host name received by that backend server in the HTTP host header.
205
+
Due to the fact that by default Application Gateway sends the same HTTP host header to the backend as it receives from the client, you need to ensure that the TLS certificate installed on the backend server, is issued with a DNS NAME that matches the host name received by that backend server in the HTTP host header.
206
206
Remember that, unless specified otherwise, this hostname would be the same as the one received from the client.
207
207
208
208
For example:
@@ -211,16 +211,16 @@ Imagine that you have an Application Gateway to serve the https requests for dom
211
211
212
212
On that Application Gateway you should have a listener for the host www.contoso.com with a rule that has the "Backed HTTP Setting" forced to use protocol HTTPS (ensuring End-to-end TLS). That same rule could have configured a backend pool with two VMs running IIS as Web servers.
213
213
214
-
As we know enabling HTTPS in the "Backed HTTP Setting" of the rule will make the second part of the communication that happens between the Application Gateway instances and the servers in the backend to use TLS.
214
+
As we know enabling HTTPS in the "Backed HTTP Setting" of the rule makes the second part of the communication that happens between the Application Gateway instances and the servers in the backend to use TLS.
215
215
216
-
If the backend servers do not have a TLS certificate issued for the CNAME www.contoso.com or *.contoso.com, the request will fail with **Server Error: 502 - Web server received an invalid response while acting as a gateway or proxy server** because the upstream SSL certificate (the certificate installed on the backend servers) will not match the hostname in the host header, and hence the TLS negotiation will fail.
216
+
If the backend servers do not have a TLS certificate issued for the DNS NAME www.contoso.com or *.contoso.com, the request fails with **Server Error: 502 - Web server received an invalid response while acting as a gateway or proxy server** because the upstream SSL certificate (the certificate installed on the backend servers) doesn't match the hostname in the host header, and hence the TLS negotiation fails.
217
217
218
218
219
219
www.contoso.com --> APP GW front end IP --> Listener with a rule that configures "Backend HTTP Settings" to use protocol HTTPS rather than HTTP --> Backend Pool --> Web server (needs to have a TLS certificate installed for www.contoso.com)
220
220
221
221
## Solution
222
222
223
-
it is required that the CNAME of the TLS certificate installed on the backend server, matches the host name configured in the HTTP backend settings, otherwise the second part of the End-to-end communication that happens between the instances of the Application Gateway and the backend, will fail with "Upstream SSL certificate does not match", and will throw back a **Server Error: 502 - Web server received an invalid response while acting as a gateway or proxy server**
223
+
It's required that the DNS NAME of the TLS certificate installed on the backend server, matches the host name configured in the HTTP backend settings, otherwise the second part of the End-to-end communication that happens between the instances of the Application Gateway and the backend, fails with "Upstream SSL certificate doesn't match", and throws back a **Server Error: 502 - Web server received an invalid response while acting as a gateway or proxy server**
0 commit comments