500 Internal Server Error when opening files in new tab

I just gave a client a tour of their new Kirby website, and ran into an interesting bug. While logged into the panel, opening a file in a new tab (via both cmd+click and right click > open in new tab) breaks the panel. The new tab opens with a 500 Internal Server Error message, the current tab stops responding and shows the same error when I refresh (and does so until I navigate away from the panel and then back to it).

This wasn’t happening on my localhost dev server, so I’m assuming it’s a server thing. Here’s what we’re using for that:

  • Dreamhost Happy Hosting (i.e., shared — not my decision)
  • PHP 7.4 FastGCI (I’m in the middle of switching it to PHP 7.4 CGI to see if that makes a difference — takes a while)
  • Kirby v3.5.3.1

Any ideas?

Update — Switched to PHP 7.4 CGI, same issue. Always hoping for the quick/easy fix :sweat_smile:

Is it possible the server is set up using some kind of weird session locking mechanism which just… breaks if two tabs/windows with same cookies/session are opened?

@JamesFCreative could you give us a little more info on your testing setup? - e.g.:

  1. what browser are you using? Have you tried this with multiple browsers, to see if it’s a browser-specific issue?
  2. does this happen with a standard, ‘starterkit’ installation on the server? If not, then it might be something specific to your site config/code - e.g., what plugins do you have installed on the site? If you experience the same issue even with a ‘starterkit’, then that would confirm your suspicion that it’s likely to be something with the server.

On the plus side, there are not many settings that can be changed at server-level that would cause this kind of issue, so if that is the case, we might be able to troubleshoot.

  1. what web server are you using - i.e., Apache, Nginx, etc.?

Oh you might be onto something! Indeed, opening any new tab from within the panel causes this issue.

Thanks for the reply.

  1. I’m using Firefox. I’ve tested in Chrome with the same result.
  2. I will try this out and report back.
  3. It’s an Apache server