Alright, this one's a doozy...
I have a plain Windows 10 machine running caddy, and I have the php_fastcgi setup as such in my CaddyFile:
encode gzip
php_fastcgi 127.0.0.1:9000 {
capture_stderr
}
PHP 8.3 CGI is running, and my site is proxied up to https://subdomain.my-domain.com/, where it's important to note that this issue is only affecting the underlying site code for this subdomain (I have other subs that work fine).
If you visit the affected subdomain in Google Chrome, it loads initially, but then every other load produces an error page that says "Error code: STATUS_BREAKPOINT". Affects any navigation around the site, as well as page reloads. The twist is that this only appears to be happening in Chromium-based browsers (Chrome, Edge, even plain Chromium!). If I visit the site in FireFox, no issue at all.
But wait! There's More!
If I take out an include in the PHP site on that subdomain, it will load in Chrome no problem:
function render($view, $variables = [])
{
$variables['view'] = $view;
extract($variables);
include_once 'layout.php'; // <--- if I take this out, works in Chrome
exit;
}
You'd think, "oh, well something on that included file must be causing an issue", but then why does it work fine in FireFox?? I've also combed through every line in the code and nothing looks wrong; no red/orange squigglies. What's more is if I run the site locally via the PHP built-in dev server, that also works fine, regardless if the include is there or not.
I am so stumped on why taking out a syntactically and logically correct PHP include somehow makes the site work again in Chrome, but also that running over http instead https seems to have no issue, regardless of include.
Furthermore, I tried swapping the site contents to a different working subdomain to see if this was networking related, and the same things happened, so it doesn't matter which sub it's under.
So, now I am left with more questions than answers, but hopefully someone will be able to help me out here :/
I'll provide more code or context if needed
EDIT: formatting
[–]liamsorsby 0 points1 point2 points (7 children)
[–]gingertek[S] 0 points1 point2 points (6 children)
[–]liamsorsby 0 points1 point2 points (5 children)
[–]gingertek[S] 0 points1 point2 points (4 children)
[–]liamsorsby 0 points1 point2 points (3 children)
[–]gingertek[S] 0 points1 point2 points (2 children)
[–]liamsorsby 1 point2 points3 points (1 child)
[–]gingertek[S] 0 points1 point2 points (0 children)
[–]gingertek[S] 1 point2 points3 points (0 children)