This is a possible solution for this issue. https://github.com/matomo-org/matomo/issues/10881
"Error page served with HTTP 200 status"
Prior to this PR dieWithHtmlErrorPage() defaults to returning a http 200 if the caught exception doesn't have a code set on it. This PR instead causes dieWithHtmlErrorPage() to default to returning a http 500 unless another code is set.
This is the URL I have been using. Note the invalid date parameter. the error page is identical however its http status code is now 500 instead of 200.
I am still working through getting the tests working locally. I get a few failures even before I make any changes. Despite that I wanted to put this PR up now just to see if this approach is fundamentally a problem in some way :)
Hi @andyjdavis, I merged this, thanks for the great contribution!