lando / pantheon

The Official Lando Pantheon plugin.
https://docs.lando.dev/pantheon
GNU General Public License v3.0
11 stars 18 forks source link

Containers return 500 error after login #256

Closed Phalconline closed 2 weeks ago

Phalconline commented 5 years ago

The last try was to delete docker and Lando and install them from scratch. After lando start: image

Then I open all links: https://localhost:32800/ - ERR_TOO_MANY_REDIRECTS image https://localhost:32801 - ERR_SSL_PROTOCOL_ERROR https://localhost:32799/ - ERR_CONNECTION_CLOSED http://website.lndo.site/ - OK - but after login, I have error 500 in the browser on the admin page https://website.lndo.site/ - OK - but after login, I have error 500 in the browser on the admin page https://localhost:32798 - OK

My lando.yml

name: website
recipe: pantheon
env_file: lando.env
config:
  env_file: lando.env
  framework: wordpress
  site: website
  id: my-id
  xdebug: true
  index: true
  edge: true
  cache: true
tooling:
  env:
    service: web

Logs image image image Also, that in index container: WARNING: A context path must either be an empty string or start with a '/' and do not end with a '/'. The path [/] does not meet these criteria and has been changed to []

macOS v.10.14.6 Docker Version 18.03.1-ce-mac64 Lando Pantheon recipe for wordpress Lando & terminus version image

I have a custom folder for wp-core, I use core instead wp

Do you have any ideas what the problem or where I can found logs with the errors?

Phalconline commented 5 years ago

fix is updating to the latest version of Lando v3.0.0-rc.20.

blachawk commented 4 years ago

Requesting to re-open this issue, how do we resolve our containers from returning a 500 error? I'm experiencing this same exact issue with all your screenshots. @Phalconline, how did you resolve this?

jessicalwilson commented 2 years ago

My team and myself are experiencing this issue.

wesleyduff commented 2 years ago

same here .. just happened recently

labboy0276 commented 2 years ago

@jessicalwilson @wesleyduff What version of docker compose do you have installed?

jivygraphics commented 2 years ago

Same issue as @jessicalwilson and running Docker Desktop for Mac, running v3.6.0.5487. I've gone as far as nuking lando/docker and reinstalling from scratch with a rebuild. No dice.

heidimark commented 2 years ago

I've got the same issue. Running Lando 3.6.0, Docker Desktop 3.6.0 (67351). Specifically this affects WordPress sites checked out from Pantheon. Everything works fine until I attempt to sign in as an administrator. Then every page returns a 500 error.

I've tried going nuclear and performing a full docker system prune (including all volumes) and starting from scratch. Same issue, every time.

heidimark commented 2 years ago

Update: as dumb as this sounds, try clearing your cookies for lndo.site. I experienced the 500 error yet again, then attempted to access the same site via an Incognito window. No 500 error, which lead me to believe it was something to do with a session or cookie. So I cleared all cookies related to lndo.site and attempted to access the site again. No more 500 error and I could successfully log into the admin center.

michaelprflores commented 2 years ago

I've got the same issue. Running Lando 3.6.0, Docker Desktop 3.6.0 (67351). Specifically this affects WordPress sites checked out from Pantheon. Everything works fine until I attempt to sign in as an administrator. Then every page returns a 500 error.

I've tried going nuclear and performing a full docker system prune (including all volumes) and starting from scratch. Same issue, every time.

I'm experiencing this exact issue as well. Can anyone help? I also cleared the cache (as suggested) but I continue to get the same result. I am able to see the WordPress homepage. But as soon as I click the dashboard, HTTP ERROR 500 is returned.

I am running:

heidimark commented 2 years ago

Yes, I can definitely help (and with a definitive answer this time). Go into your browser settings and clear out all cookies/cache for anything .lndo.site or .lndo. It is something to do with the browser's cache conflicting with the lando instance. Clearing cache is the quickest method and has worked every time for me. No more going nuclear with the containers.

Edit: oops, just read the rest of @michaelprflores comment about trying the cache clearing and it not working. It has worked for me every time. Have you cleared the cache for both lndo.site and lndo? Also, make sure you not only clear cache but also clear cookies.

michaelprflores commented 2 years ago

Hi @heidimark. Thanks I have done both and I can only see the homepage and then an ERROR 500 for when I click anywhere else.

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions and please check out this if you are wondering why we auto close issues.

billiemead commented 1 year ago

FWIW, if you run into this in late 2023.... Try opening the Lando site URL in an Incognito window. Works for me every time. so I concluded for me, it too was related to browser caching. I installed a Chrome browser cache clearing extension, set-it up and every time I get a 500 server error, the fix is a button press away.

Clear Cache for Google

gustavo-thirdandgrove commented 1 year ago

Clearing cookies or using an incognito browser wasn't working for me. I had to investigate further.

lando version v3.18.0

My HTTP response is:

HTTP/2 500 
server: Varnish
content-length: 0
date: Mon, 21 Aug 2023 16:57:29 GMT

In my case Varnish seems to be the point of failure.

lando info suggests the "edge" service is a varnish instance.

I opened a shell to the edge via lando ssh -s edge, then I run varnishlog, then I replayed the request.

Varnish showed, among tons of other data, these lines:

-   Error          out of workspace (Req)
-   Error          workspace_client overflow

And I can see in my case the rest of the log shows a lot of headers coming from a WordPress plugin. This is likely the cause of my error. Too many headers would fill the memory, and there's also a hard cap on the amount of headers allowed.

I will try to fix this on the PHP side, but another approach would be to update varnish settings. Current settings can be seen by running varnishadm param.show in the edge shell.

In my case either workspace_client or http_max_hdr settings could help. Lando has environment variables for setting them: VARNISHD_PARAM_WORKSPACE_CLIENT and VARNISHD_PARAM_HTTP_MAX_HDR.

I updated my lando yml file to include this:

services:
  edge:
    overrides:
      environment:
        VARNISHD_PARAM_WORKSPACE_CLIENT: 256k
        VARNISHD_PARAM_HTTP_MAX_HDR: 128

After running lando rebuild the page works, and I can start investigating my wordpress plugin.

girlg33k commented 10 months ago

I started experiencing this the other day and have been pulling my hair out trying to resolve ever since. I have four local sites running in Lando with Pantheon recipe and everything's been fine for at least a year. Of my four local instances only one was exhibiting this behaviour, clearing the cache and cookies doesn't work for me, but running inside an incognito browser does so I guess that's what I'll be doing from now on.

kfoubert commented 7 months ago

Updating the varnish settings in .lando.yml worked great for me. I also used the varnish command lando varnishadm "ban req.http.host ~ my.lndo.site"

kfoubert commented 7 months ago

Here's another option that devs at my company uses when lando is implementing the pantheon recipe.

Create a file named .lando.local.yml and add the following setting and then rebuild the site. Edge creates the varnish service and several other services that aren't really needed for local development.

config:
  edge: false
kfoubert commented 7 months ago

Here's another option that devs at my company uses when lando is implementing the pantheon recipe.

Create a file named .lando.local.yml and add the following setting and then rebuild the site. Edge creates the varnish service and a number of other services that aren't really needed for local development.

config:
  edge: false
timoutright commented 2 weeks ago

Update: as dumb as this sounds, try clearing your cookies for lndo.site. I experienced the 500 error yet again, then attempted to access the same site via an Incognito window. No 500 error, which lead me to believe it was something to do with a session or cookie. So I cleared all cookies related to lndo.site and attempted to access the site again. No more 500 error and I could successfully log into the admin center.

Here I am, two years later and this was exactly the fix I needed. Thanks @heidimark !

reynoldsalec commented 2 weeks ago

Summary here seems to be to try..

  1. Clearing your browser's cache for .lndo.site
  2. See if the site works in an "incognito" window
  3. Try setting up alternative varnish config
  4. Setting the edge service to false.

Moving to the Pantheon recipe repo and closing.