A cloud-based identity and access management service for securing user authentication and resource access
login.microsoftonline.com returns HTTP 404 from IONOS server but 200 from another server
Hello Microsoft Support,
We are integrating Microsoft Entra ID / OpenID Connect authentication into our Laravel LMS application.
We are experiencing an unusual issue where requests to the Microsoft Entra authentication endpoint return HTTP 404 NotFound only when originating from our production IONOS server.
Our application registration is configured as a multi-tenant application supporting both:
- Organizational Microsoft Entra ID accounts
- Personal Microsoft accounts
We are using the common authority.
Problem
The following Microsoft OIDC discovery endpoint:
returns:
when requested from our IONOS production server.
However, the exact same URL and the exact same standalone PHP/cURL code executed from another server returns:
with the expected OpenID Connect configuration document.
Tests performed
From the IONOS server we have confirmed:
- DNS resolution works
- HTTPS/TLS negotiation succeeds
- SSL verification succeeds
- IPv4 returns HTTP 404
- IPv6 returns HTTP 404
- HTTP/1.1 returns HTTP 404
- HTTP/2 returns HTTP 404
- Laravel HTTP client returns HTTP 404
- Native PHP cURL returns HTTP 404
- Standalone PHP cURL outside Laravel also returns HTTP 404
- Adding
Host: login.microsoftonline.comdoes not change the result - Changing the User-Agent to
Mozilla/5.0does not change the result -
graph.microsoft.comis reachable successfully from the same server - Google and Cloudflare are also reachable successfully
For example, the Microsoft response contains:
The IONOS server's outbound IPv4 address is:
The same request from another server returns HTTP 200 OK, for example with Microsoft endpoint IP:
Additional testing
We also tested the tenant-specific discovery URL:
and this also returns HTTP 404 from the IONOS server.
Therefore, the issue does not appear to be related specifically to the common authority.
OAuth impact
Our Microsoft authorization flow successfully redirects the user to Microsoft and Microsoft successfully redirects back to our callback with an authorization code.
The failure occurs when our server attempts to communicate with:
That request also receives HTTP 404.
We initially suspected Laravel Socialite, but we have reproduced the same 404 using a completely independent native PHP cURL request.
Request for investigation
Could you please investigate whether requests originating from our outbound IP:
are being handled differently by the Microsoft Entra authentication gateway?
In particular, could you check:
- Source-IP-specific routing or filtering
- Any reputation/security restrictions associated with this IP
- Microsoft Entra gateway routing for this source network
- Whether the
login.microsoftonline.comrequests are reaching the expected Entra service - Whether the following Microsoft request ID can be traced:
We would appreciate confirmation of why the same publicly accessible OIDC discovery endpoint returns 200 OK from another server but 404 NotFound from our IONOS server.
We can provide additional request IDs, timestamps, cURL output, or other diagnostic information if required.
Thank you.Hello Microsoft Support,
We are integrating Microsoft Entra ID / OpenID Connect authentication into our Laravel LMS application.
We are experiencing an unusual issue where requests to the Microsoft Entra authentication endpoint return HTTP 404 NotFound only when originating from our production IONOS server.
Our application registration is configured as a multi-tenant application supporting both:
- Organizational Microsoft Entra ID accounts
- Personal Microsoft accounts
We are using the common authority.
Problem
The following Microsoft OIDC discovery endpoint:
returns:
when requested from our IONOS production server.
However, the exact same URL and the exact same standalone PHP/cURL code executed from another server returns:
with the expected OpenID Connect configuration document.
Tests performed
From the IONOS server we have confirmed:
- DNS resolution works
- HTTPS/TLS negotiation succeeds
- SSL verification succeeds
- IPv4 returns HTTP 404
- IPv6 returns HTTP 404
- HTTP/1.1 returns HTTP 404
- HTTP/2 returns HTTP 404
- Laravel HTTP client returns HTTP 404
- Native PHP cURL returns HTTP 404
- Standalone PHP cURL outside Laravel also returns HTTP 404
- Adding
Host: login.microsoftonline.comdoes not change the result - Changing the User-Agent to
Mozilla/5.0does not change the result -
graph.microsoft.comis reachable successfully from the same server - Google and Cloudflare are also reachable successfully
For example, the Microsoft response contains:
The IONOS server's outbound IPv4 address is:
The same request from another server returns HTTP 200 OK, for example with Microsoft endpoint IP:
Additional testing
We also tested the tenant-specific discovery URL:
and this also returns HTTP 404 from the IONOS server.
Therefore, the issue does not appear to be related specifically to the common authority.
OAuth impact
Our Microsoft authorization flow successfully redirects the user to Microsoft and Microsoft successfully redirects back to our callback with an authorization code.
The failure occurs when our server attempts to communicate with:
That request also receives HTTP 404.
We initially suspected Laravel Socialite, but we have reproduced the same 404 using a completely independent native PHP cURL request.
Request for investigation
Could you please investigate whether requests originating from our outbound IP:
are being handled differently by the Microsoft Entra authentication gateway?
In particular, could you check:
- Source-IP-specific routing or filtering
- Any reputation/security restrictions associated with this IP
- Microsoft Entra gateway routing for this source network
- Whether the
login.microsoftonline.comrequests are reaching the expected Entra service - Whether the following Microsoft request ID can be traced:
We would appreciate confirmation of why the same publicly accessible OIDC discovery endpoint returns 200 OK from another server but 404 NotFound from our IONOS server.
We can provide additional request IDs, timestamps, cURL output, or other diagnostic information if required.
Thank you.