Questo è il forum di assistenza tecnica di WPML, il plug-in multilingue di WordPress.
La sua lettura è permessa a tutti, ma la pubblicazione è riservata esclusivamente ai clienti di WPML. Il team di WPML risponde sul forum 6 giorni su 7, 22 ore su 24.
Nessun supporter è disponibile a lavorare oggi sul forum Italian. Sentitevi liberi di creare ticket e li gestiremo il prima possibile quando saremo online. Grazie per la comprensione.
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|
- | 11:00 – 15:00 | 11:00 – 15:00 | 11:00 – 15:00 | 11:00 – 15:00 | 11:00 – 15:00 | - |
- | 16:00 – 20:00 | 16:00 – 20:00 | 16:00 – 20:00 | 16:00 – 20:00 | 16:00 – 20:00 | - |
Fuso orario del fornitore: Europe/Rome (GMT+01:00)
Etichettato: Performance
Questo ticket contiene 37 risposte, ha 3 voci.
Ultimo aggiornamento da Laura 1 mese, 1 settimana fa.
Assistito da: Laura.
Autore | Messaggi |
---|---|
Agosto 26, 2024 a 5:45 am #16102348 | |
enricob-50 |
Contesto del problema: Dai log vedo spesso questo errore esatto: - PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 262144 bytes) in /srv/htdocs/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/functions.php on line 154 Nel momento in cui si genera questo errore nella lingua tradotta, per esempio inglese, quando si fa lo switch, da errore critico. La memoria è settata a 512MB. Nel server non è possibile aumentarla ulteriormente. Da cosa può dipendere? I plugin di WPML sono tutti all'ultima versione. Grazie dell'aiuto Sintomi: Domande: |
Agosto 26, 2024 a 8:19 am #16103050 | |
Marsel Nikolli |
Buongiorno, Grazie per aver contattato il supporto WPML. Sarò felice di aiutarti. Questi errori indicano che il limite di memoria PHP (attualmente impostato a 512MB) è insufficiente per le operazioni del plugin. In particolare, il plugin cerca di allocare più memoria di quella disponibile, causando un errore fatale. A volte, le configurazioni del server sovrascrivono le impostazioni di wp-config.php. Assicurati che il file php.ini sul tuo server abbia un valore di memory_limit adeguato: memory_limit = 1024M Nota: Assicurati di avere un backup completo del tuo sito web prima di apportare eventuali aggiornamenti/cambiamenti al sito. Fammi sapere se questo aiuta, |
Agosto 26, 2024 a 12:54 pm #16104589 | |
enricob-50 |
Ho chiesto al server se è possibile aumentare la memoria come da voi suggerito. Ho notato che questo accade solo nella lingua inglese, ovvero: link nascosto In italiano, francese e spagnolo no... Potrebbe esserci un motivo particolare? |
Agosto 26, 2024 a 1:04 pm #16104619 | |
Marsel Nikolli |
Ciao, Grazie per l'aggiornamento. Sarebbe possibile verificare se il problema si presenta in una configurazione minima, ovvero: - impostare un tema predefinito di WordPress Dopo, verifica se il problema persiste. **Nota:** Assicurati di avere un backup completo (file e database) prima di provare qualsiasi modifica sul tuo sito web. Fammi sapere come procede, |
Settembre 5, 2024 a 7:00 am #16143288 | |
enricob-50 |
Ciao, ho atteso un pò a rispondere perchè mi sono interfacciato con l'hosting corrente con il fine di risolvere il problema, ma per ora nulla di fatto. Premessa: in questo hosting (Pressable) non è possibile aumentare la memoria oltre a 512MB, questa la loro risposta: .... "In the Pressable environment, auto-scaling is used. This means that memory is allocated per worker thread, and each worker thread is allocated a maximum of 512Mb. The site can scale to a maximum of 110 threads, each with 512Mb, meaning that in practice, the equivalent static server would be running something over 55Gb of RAM. That's the theoretical math, but you can see from this that the limit is far more than a site should naturally be using, and if the site is running out of memory, there have to be other factors at play. Pressable can see that certain options on the site are using considerable resource. They can also see that the site was recently upgraded to PHP 8.3, and have suggested switching that back if you feel that this has triggered more errors." .... A questo punto abbiamo portato la versione alla 8.1, ma ovviamente non è cambiato nulla. Abbiamo ricontattato l'assistenza del server e ci dicono: .... One thing to note: WPML is currently preventing the caching system from running. This is putting extreme pressure on the servers, as all pages are delivered dynamically, rather than leveraging cache. There is also an issue in your theme functions.php file which is causing issues: it appears that, on some occasions, the contstant ICL_LANGUAGE_CODE is called but is not defined. We recommend wrapping this code block in a try{}catch(Exception $ex){} block to defend against these fatal errors, or adding other defensive code to prevent this from causing a crash should the constant not be defined. .... Ho corretto il codice come da loro indicazione e il warning è sparito. Ma l'errore sulla memoria rimane. Detto ciò mi dicono: .... This prevents Batcache from setting the WPML cookies as skip cookies (by default, Batcache will exclude from memcached any cookie starting with wp). It also sets the memcached caching period to 1800 seconds (30 minutes) and ensures that the page is cached on the first visit. //Batcache Customizations //Check if batcache params are in an object or an array, apply customizations accordingly This appears to be working well on staging but I have not tested extensively. Could you take a look at this for me, test, and decide? Then: on the live server we see Nitropack using setcookie to handle the currency cookies. On staging, Nitropack is not enabled, and caching, with the changes above, is working well. However, the way Nitropack is handling these cookies is preventing the advanced-cache.php from working correctly. Memcached is an in-memory caching system that allows your site to store cached pages in server RAM. It also interacts with the Pressable edge caching system. However, Nitropack is using setcookie on every request, which is preventing the caching from taking place. .... Replico sul sito live e non risolve e mi dicono nuovamente: .... Regarding the Out of Memory (OOM) errors, when I checked the site it appeared that you had not disabled the autoloading options as suggested by my colleague. I went ahead and created an on demand backup of your database and then turned off autoload for the following options: Since disabling those I have not been able to replicate additional OOM errors. Can you please check the site and see if this is also the case for you? If you do experience one of these errors, please share exactly what you were doing on the site when it occurred so that we can more easily try to replicate the case. .... Non risolve e come ultima loro risposta ho questo: Thank you for sharing that video. I was able to duplicate this but not consistently. Digging a bit more on the site, the only other thing I was able to turn up is a request that appears to be tied to WPML authentication: |Toggle|2.684,3 ms|385.3 ms|POST|link nascosto 38&website_uuid=36363531-6636-5532-b634-313236336363&ui_language_code= it&site_key=OQUsTQZi2c&signature=qBkq80QKbBQBf79dQpS3nm6zdHA%3D|426| Associated with that request I see the following which seems to indicate that WPML still has the wrong URL set: "status":426,"title":"Api error non-matching site finger print","fingerprint_confirmed":true,"stored_fingerprint":{"wp_url":"https ://difiaba.presentazionesitoweb.com"},"identical_url_before_movement":false,"site_moved":false,"received_fingerprint":"{\"wp_url\":\"https:\\/\\/difiaba.it\" }"}],"cw_request_id":"9a08a13bd21c487d8e95e7096bf56954"} I'm also seeing a notice in the WPML status logs that indicates the same but there appears to be no way to update this via the UI. Can you please check with WPML what the recommended next steps might be here? I beleive you may need to delete the otgs_wpml_tm_ate_cloned_site_lock option but since this is not a plugin made by us I'm not sure. Il link del video è questo che mostro cosa succede: link nascosto Potete aiutarmi a risolvere? Perchè se tutto è legato alla memoria allora non lo risolveremo mai se non viene aumentata. Grazie |
Settembre 5, 2024 a 1:40 pm #16145490 | |
Laura Supporter
Lingue: Inglese (English ) Italiano (Italiano ) Fuso orario: Europe/Rome (GMT+01:00) |
Salve, mi occuperò io del ticket d'ora in poi. Come prima cosa vorrei capire dove viene usata la costante ICL_LANGUAGE_CODE in quanto è deprecata e non andrebbe utilizzata affatto, questo potrebbe comportare dei problemi. Inoltre da quello che leggo il sito è stato spostato o ha cambiato URL ma non è stata risolta la notifica che invia WPML, quello può creare problemi. Non hai un messaggio blu nella dashboard? |
Settembre 6, 2024 a 7:20 am #16147461 | |
enricob-50 |
Posso fornirti le credenziali ADMIN cosi puoi verificare direttamente? E ti indico dove verificare... |
Settembre 6, 2024 a 9:12 am #16147863 | |
Laura Supporter
Lingue: Inglese (English ) Italiano (Italiano ) Fuso orario: Europe/Rome (GMT+01:00) |
La notifica è nella dashboard di WordPress, se non c'è o l'hai risolta, ma questo lo puoi sapere solo tu, oppure c'è qualche problema che ne impedisce la visualizzazione, però non è una cosa che posso verificare solo accedendo al sito. Idem per la costante, di solito viene aggiunta al wp-config.php ma a prescindere mi serve sapere perché è stata aggiunta e questo non lo posso sapere solo guardando il file. |
Settembre 6, 2024 a 9:31 am #16147917 | |
enricob-50 |
Ti rispondo per punti: - La notifica sulla dashboard di WordPress non è presente. WPML è collegato al sito live e non ho notifiche relative a siti diversi da quello live. - la costante: è stata aggiunta al file functions.php per mettere la condizione su quale lingua eseguire il codice. Esempio: if(defined('ICL_LANGUAGE_CODE') && ICL_LANGUAGE_CODE == 'en'){ Ci sono metodi alternativi per sapere la lingua sulla quale eseguire il codice? |
Settembre 6, 2024 a 9:55 am #16148079 | |
Laura Supporter
Lingue: Inglese (English ) Italiano (Italiano ) Fuso orario: Europe/Rome (GMT+01:00) |
Il metodo che suggeriamo ora è usare l'hook wpml_current_language, vedi qui e qui per più informazioni. |
Settembre 6, 2024 a 12:15 pm #16148916 | |
enricob-50 |
Ok grazie. Fisicamente nella condizione if, puoi farmi un esempio pratico? |
Settembre 6, 2024 a 12:17 pm #16148935 | |
enricob-50 |
Quindi potrebbe essere: $lingua_corrente = apply_filters( 'wpml_current_language', NULL ); if(lingua_corrente == 'en'){ esatto? |
Settembre 6, 2024 a 1:45 pm #16149215 | |
Laura Supporter
Lingue: Inglese (English ) Italiano (Italiano ) Fuso orario: Europe/Rome (GMT+01:00) |
Senza sapere cosa vuoi fare esattamente e qual è il resto del codice mi risulta impossibile dare indicazioni. |
Settembre 7, 2024 a 12:23 pm #16151268 | |
enricob-50 |
Ciao Laura, penso che stiamo andando fuori tema, il problema attuale sul sito è che sto riscontrando un problema sulla memoria. Se leggi tutta la conversazione il servizio attuale di hosting imputa tale problema a WPML. Quando si presenta il problema? Non sempre, random, ma 100% delle volte allo switch della lingua inglese, non delle altre lingue. Si vede un errore critico e sui log cè l'avviso della memoria. Fammi sapere che tipo di informazioni ti servono per poter trovare una soluzione al problema. Grazie mille dell'aiuto. |
Settembre 9, 2024 a 11:37 am #16155905 | |
Laura Supporter
Lingue: Inglese (English ) Italiano (Italiano ) Fuso orario: Europe/Rome (GMT+01:00) |
Non mi sembra che stiamo andando fuori tema. E' stato l'hosting stesso a dirti che il problema può essere la costante
visto che è deprecata, dovresti sostituirla con l'hook e vedere se questo aiuta con il problema della memoria. Ma con le indicazioni che mi hai dato non mi è possibile dirti se stai usando l'hook correttamente. |
L'argomento '[Chiuso] PHP Fatal error: Allowed memory size' è chiuso a nuove risposte.