Ho avuto un problema per un po 'di tempo in cui l'installazione di aggiornamenti wordpress non mostra alcun messaggio o il progresso. Gli aggiornamenti in generale fare installare, ma è difficile sapere quando gli aggiornamenti sono finiti. Ci sono alcune discussioni in linea con le possibili soluzioni, ma la maggior parte di loro non sono stati utili nel mio caso.
Aggiornare: See solution at the bottom of this post
When updating plugins the following progress messages should be displayed. In my case they are not showing up.
The update process is starting. This process may take awhile on some hosts, quindi per favore siate pazienti.
Enabling Maintenance mode…
Updating Plugin plugin-name
Downloading update from plugins.
Unpacking the update…
L'installazione della versione più recente.
Removing the old version of the plugin…
Plugin upgraded successfully.
Akismet updated successfully. Mostra / nascondi dettagli.
Disabling Maintenance mode. Tutti gli aggiornamenti sono stati completati.
Azioni: Return to Plugins page | Return to WordPress Updates.
This applies to all other updates too, di cui v'è una lista completa sul wordpress luogo
Probably the most common cause is PHP zlib compression as described by kungfujosh on the wordpress forums. Sadly I already have zlib compression set to off so that isn’t my issue.
The issue must be a setting in wordpress, php-fpm, or nginx somewhere but I have been unable to locate it so far.
Aggiornare: I have ruled out causes in php.ini and the php-fpm config file using a full test VM. There appear to be multiple nginx settings interacting that are causing the issue for me.
The first settings that seem to be relevant are the use of gzip and brotli being turned on. This seems to prevent the page loading progressively. It should be easy enough to turn these off for the updates page using a little custom function in wordpress that sets the content-encoding such that nginx wont compress the files
/******************************************\ * gzip Disabilitare e Brotli per la pagina di aggiornamenti * \******************************************/ funzione disable_gzip_brotli() { testata('Content-Encoding: identità'); } se ( basename($_SERVER["SCRIPT_FILENAME"], '.Php') == "aggiornamento-core" ) { add_action( 'dentro', 'Disable_gzip_brotli' ); }
Unfortunately this on it’s own hasn’t proven the solution to my updating issues as something else causes the page to never display any output, progressive or otherwise. There is another nginx setting that is needed.
After much searching I finally identified the issue in my headers that are set.
Un semplice cambiamento da add_header X-Frame-Options DENY always;
a add_header X-Frame-Options SAMEORIGIN always;
“Hi James I realise it has been a long while, but I just checked this on windows 11 (build 23H2)…”