Ok I've done some checks, and even Microsoft Edge has the "friendly error messages" feature. It only happens if there are fewer than 512 bytes in the response, but that's really annoying when debugging.
And, IIS is still "helping" by messing with what is displayed:
http://www.iis.net/learn/application-frameworks/install-and-configure-php-on-iis/improve-php-error-messages-in-iis-7-and-above
So I suggest we add a config option with 3 possible values:
- Always use correct HTTP status codes to guarantee correct semantics (defaults to on on non-IIS)
- Always use 200 success status code to avoid middleware interference (defaults to on on IIS)
- Use correct HTTP status codes except on Microsoft web browsers which interfere with display
And, IIS is still "helping" by messing with what is displayed:
http://www.iis.net/learn/application-frameworks/install-and-configure-php-on-iis/improve-php-error-messages-in-iis-7-and-above
So I suggest we add a config option with 3 possible values:
- Always use correct HTTP status codes to guarantee correct semantics (defaults to on on non-IIS)
- Always use 200 success status code to avoid middleware interference (defaults to on on IIS)
- Use correct HTTP status codes except on Microsoft web browsers which interfere with display