[Risolto] ho un errore nei log che non riesco a risolvere
Questo thread è stato risolto. Ecco una descrizione del problema e della soluzione.
Problema: Dopo il trasferimento del sito su un nuovo server, il plugin wpml-string-translation genera errori nei log relativi alla restrizione open_basedir. Soluzione: Se stai riscontrando errori di restrizione open_basedir con il plugin wpml-string-translation dopo aver trasferito il tuo sito, ti consigliamo di seguire la guida disponibile a questo link.
Se la soluzione proposta non dovesse essere più rilevante o non risolvere il tuo problema specifico, ti invitiamo a verificare le questioni note e a confermare che hai installato le versioni più recenti dei temi e dei plugin. In caso di ulteriori difficoltà, ti raccomandiamo di aprire un nuovo ticket di supporto. Per assistenza aggiuntiva, visita il forum di supporto WPML.
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.
sto riscontrando lo stesso problema su due siti diversi. Di seguito riporto un estratto dal log errori del secondo sito interessato (tecnoindustriapi.com), che presenta un comportamento identico a quello già riscontrato su un altro progetto:
swift
Copia
Modifica
[09-May-2025 14:07:12 UTC] PHP Warning: file_exists(): open_basedir restriction in effect. File(WP Endpoints-en_US.mo) is not within the allowed path(s): (/home/tecnoindustriapi/:/opt/cpanel/ea-php83/root/usr:/usr/local/lib/php:/tmp:/etc/pki/tls/certs/ca-bundle.crt:/var/cpanel/php/sessions:/usr/local/bin/wp) in /home/tecnoindustriapi/public_html/wp-content/plugins/wpml-string-translation/classes/MO/Hooks/LoadTranslationFile.php on line 82
[09-May-2025 14:07:12 UTC] PHP Warning: file_exists(): open_basedir restriction in effect. File(WP Endpoints-en_US.l10n.php) is not within the allowed path(s): (...) in /wp-content/plugins/wpml-string-translation/classes/MO/Hooks/LoadTranslationFile.php on line 85
Inoltre, riscontro anche un errore fatale sul tema:
thrown in /wp-content/themes/hello-elementor/functions.php on line 273
Sembra che il problema sia legato alla restrizione open_basedir, che impedisce il corretto caricamento di file .mo e .l10n.php utilizzati per le traduzioni.
Potreste gentilmente indicarmi come risolvere questo problema? Esiste una soluzione o una configurazione consigliata per ambienti server con queste restrizioni?
Resto a disposizione per fornire ulteriori dettagli o accessi se necessari.
Lingue: Inglese (English )Spagnolo (Español )Italiano (Italiano )
Fuso orario: Europe/Madrid (GMT+02:00)
Se il sito funziona correttamente e il tuo hosting non ti consente di disabilitare la direttiva open_basedir, ti consiglio di disattivare il debug di WordPress.
[11-May-2025 18:52:05 UTC] PHP Warning: file_exists(): open_basedir restriction in effect. File(WP Endpoints-it_IT.l10n.php) is not within the allowed path(s): (/home/mediafrigo/:/opt/cpanel/ea-php83/root/usr:/usr/local/lib/php:/tmp:/etc/pki/tls/certs/ca-bundle.crt:/var/cpanel/php/sessions:/usr/local/bin/wp) in /home/mediafrigo/public_html/wp-content/plugins/wpml-string-translation/classes/MO/Hooks/LoadTranslationFile.php on line 88
viene generato perchè “WP Endpoints-it_IT.l10n.php” non è un percorso valido, è solo un nome di file privo di percorso assoluto o relativo. Questo causa il problema con file_exists() sotto open_basedir. Dunque andando alla riga 88 del file indicato troviamo il seguente codice:
84 $defaultPathPHP = self::replaceMoExtensionWithPhp( $defaultPathFile );
85 if ( file_exists( $defaultPathFile ) ) {
86 return $defaultPathFile;
87 }
88 if ( file_exists( $defaultPathPHP ) ) {
89 return $defaultPathPHP;
90 }
91 return null;
Il problema qui è che il valore della variabile $defaultPathPHP viene generato sbagliato. Andando a fare un DEBUG può essere molto lungo e complicato e sicuramente non di nostra competenza. Ad esempio si dovrebbe andare a vedere dove è definita la funzione replaceMoExtensionWithPhp() e a sua volta andando a ritroso andare a vedere il motivo per cui alla fine il valore del nome del file è sbagliato.
buongiorno Paola mi deve scusare ho incollato nella precedente email una risposta del server che ha analizzato ilproblema che ho con il vostro plugin vi riallego la risposta, e vi segnalo che ho lo stesso problema con una altro dominio avevo aperto un altro ticket di asssitenza per segnalare il problema è mi sono accorto solo ora che è simile a quello riscontrato su questa istallazione ... sembra che qualcosa sia andato storto quando ho fatto la migrazione .
Lingue: Inglese (English )Spagnolo (Español )Italiano (Italiano )
Fuso orario: Europe/Madrid (GMT+02:00)
Per spostarlo al secondo livello ho bisogno di quanto segue:
- Rimuovere i plugin WPML e reinstallarli. Potete scaricarli da questa pagina https://wpml.org/it/account/downloads/ "Scarica manualmente WPML "
- Dimmi in quale pagina trovi quell'errore e come lo posso riprodurre