A repeated TLS handshake failure on one custom domain in Azure App Service usually points to a binding or certificate presentation problem, not a “corrupt” certificate file.
Most likely causes in this scenario:
- The certificate is no longer effectively bound to that hostname
If the custom domain has no valid certificate binding, App Service can serve the default certificate or fail HTTPS for that hostname.
- The wrong certificate is being served
With multiple custom domains and certificates on the same app, mixing SNI SSL and IP-based SSL can cause certificate mismatch or handshake problems. Azure recommends SNI SSL for most scenarios.
- A binding conflict exists
If the same certificate is used with IP-based SSL elsewhere, Azure can hit binding conflicts such as:
Cannot set certificate for existing VIP because another VIP already uses that certificate.
- The renewed certificate did not sync correctly
If a certificate renewed but the app still serves the old one, the documented fix is to go to the App Service Certificate resource and select Synchronize. If needed, use Rekey and Sync.
- Key Vault access or sync issues
If renewal happened but the web app still serves the old certificate, verify Key Vault access policies and then sync the certificate.
What to check next:
- In the Azure portal, open the web app and go to TLS/SSL settings.
- Verify that the failing hostname still has a binding to the intended certificate.
- Confirm the binding type is SNI SSL unless legacy client support requires IP-based SSL.
- If the app mixes SNI and IP-based bindings for different certificates, simplify the configuration. This can cause the wrong certificate to be presented.
- If the certificate was recently renewed, open the App Service Certificate resource and run Synchronize. If needed, try Rekey and Sync.
- If the certificate is stored through Key Vault integration, verify Key Vault access policies and then sync again.
- Test the hostname after rebinding. The expected result is that the site loads over HTTPS without certificate warnings.
CLI checks:
az webapp config hostname list --resource-group <RG> --name <AppName>
az webapp config ssl list --resource-group <RG> --name <AppName>
These confirm that the hostname is assigned to the app and that the expected certificate is available to the app.
If the issue keeps recurring after rebinding, that aligns with a binding-loss or sync problem rather than a one-time configuration mistake. In that case, the supported next step is to open an Azure support ticket for investigation, especially if the binding appears to disappear or stop working without intentional changes.