Joomla! e PHP 7 - errore 0 ed errore 1064

google-plus Scritto da . Postato in Joomla!

Nell'ultima settimana, avendo un po' più di tempo da dedicare al blog, mi sono deciso finalmente a passare a PHP 7 e a fare i dovuti cambiamenti relativi per poter rendere la mia installazione Joomla! perfettamente compatibile con la nuova versione dell'interprete. 

Non è stato un passaggio indolore, anzi è costato tempo e studio in quanto, era normale che alcuni dei componenti non fossero compatibili con il nuovo PHP 7 e che sarebbero dunque stati da aggiornare o eliminare.

Nel mio caso fortunatamente non ho dovuto eliminare nessun componente. Il blog fa uso per mia scelta di soli componenti, plugin e moduli essenziali. Pochi sono le estensioni di terze parti in uso. 

Infatti come mi aspettavo sono state proprio queste ultime in un primo tempo a tradirmi.

Come sempre, gli esperimenti li faccio in locale, ovvero sulla mia macchina, equipaggiata con Ubuntu, Apache 2 come server web, PHP 7 e MySQL 5.7.18.

Errore 0

Una volta trasferita copia del blog in locale, avvio fiducioso il server web Apache, apro il browser e testo il funzionamento del sito in locale. Risultato? Errore 0

joomla errore 0

Se cercate su Google (o qualsiasi motore di ricerca), non troverete molto sull'argomento. Tuttavia, lungi dall'essere un errore indefinito è un problema che si verifica per una questione di versione di PHP.

Nel mio caso specifico, entrambe le volte che si è presentato, si doveva a qualche sorta di chiamata a funzione non più esistente nella libreria PHP. Nell'immagine qui sopra, si vede come viene esplicitata la causa dell'errore 0Call to undefined function ereg_replace():

In questi casi (come in altri) dove vi sono problemi di variazione di versione, uno dei metodi più efficaci (anche se una scocciatura in questione di tempo) è quello di disabilitare plugin e moduli che concorrono alla visualizzazione e funzionamento della pagina soggetta all'errore.

Dopo una serie di test, l'errore era da imputare ad un modulo che uso per lo show delle news, ovvero gli articoli recenti da più categorie: Il modulo in uso sul blog è di Gavick: HighLighter 5. Quest'ultimo è l'ultima versione, aggiornata e funzionante con PHP 7. Precedentemente, utilizzavo Gavick highlighter 4 non compatibile con l'attuale versione dell'interprete PHP.

La soluzione, è stata dunque semplice: Ho scaricato dal sito di Gavick la versione aggiornata del modulo, l'ho installata e configurata adhoc e ho disinstallato la versione precedente per evitare di avere conflitti e o ripercussioni future.

A generare il problema, vi era anche il modulo search di Joomla!. Non tanto il modulo e i plugin nativi, ma uno dei plugin di tipo search che si associano al servizio di ricerca Joomla! per estendere la possibilità di ricerca anche ad altri componenti.

Nel caso del mio blog, la ricerca falliva sul plugin K2 Search. Quest'ultimo non aggiornato causava l'errore 0. La soluzione più semplice in questo caso, è quella di disabilitare il plugin responsabile. Tuttavia sta a voi se aggiornarlo all'ultima versione, o se non vi sono aggiornamenti, rimuoverlo da Joomla! o modificarne il codice per renderlo compatibile.

Errore 1064

Fatto! E l'errore 1064? Come si vede dall'immagine (purtroppo non si vede molto) deriva da un problema di sintassi nel codice SQL.

joomla errore 1064

Chi ne era responsabile? Lo stesso Gavick HighLighter 4. Il modulo infatti, per poter ottenere gli articoli recenti, deve poter interrogare il database secondo le istruzioni da noi date in fase di configurazione entrando in conflitto con la nuova versione di PHP. 

In un colpo solo si sono risolti due problemi: Ora il sito è consultabile perfettamente da browser senza errore alcuno!

Errore 500 - Internal Server Error

Il problema verificatosi con una pagina bianca lato amministatore, appariva nel momento in cui si accedeva alla modifica o creazione di un articolo.

Lato amministratore o backend, è più semplice scovare l'errore. A meno che non avete installato un plugin o componente di terze parti per navigare all'interno del pannello Joomla!, probabilmente il conflitto sorge a causa dell'editor scelto (specie se di terze parti in quanto i nativi Joomla! si aggiornano con il CMS stesso) o da plugin che vi consentono di aggiungere elementi all'articolo.

In genere questi plugin, sono presenti sotto l'editor sotto forma di pulsanti come si può vedere dall'immagine:

editor jce joomla plugin editor

Per verificare se è l'editor in questione, andate su Sistema > Configurazione Globale > Scheda "Sito" > Impostazioni Sito > Editor predefinito.

joomla cambio editor

Selezionate un editor nativo come Code mirror o TinyMCE e salvate le impostazioni.

Se tornando in modifica/creazione articolo non vi da più errore avete trovato il responsabile.

Nel mio caso, era proprio l'editor da me scelto. Uso infatti JCE Editor, per la sua semplicità e completezza. Tuttavia visto la scadenza della versione Pro, si era fermato a una decina di versioni fa. L'aggiornamento è stato provvidenziale in quanto non si è più verificato nessun errore nemmeno lato amministratore.

Se non fosse il caso vostro e l'editor non centrasse, consiglio di vagliare uno ad uno i plugin lato amministratore di terze parti, disabilitandoli di volta in volta per cercare "il colpevole" e mettere in salvo la vostra installazione Joomla!. Una volta fatto, aggiornate o eliminate il plugin per ristabilire il normale funzionamento del CMS.

P.S.: Faccio notare, che è sempre bene aggiornare il vostro sistema: In primis per via della sicurezza e vulnerabilità che possono venirisi a creare a causa si plugin non più mautenuti o aggiornati. Evitate inoltre di utilizzare troppi plugin e componenti di terze parti. Meglio pochi e verificati. Tenete sempre aggiornato Joomla! rimanendo al passo con il team di sviluppo. Costa lavoro ma risparmia molti grattacapi e spiacevoli sorprese.

Se hai gradito l'articolo, condividilo, basta un click!

Aggiungi commento


Codice di sicurezza
Aggiorna

  • logo prontopro
  • logo boutique serramento
  • koilab japan and tropical fish farm
  • Trasloco economico - gruppo Arco Traslochi
  • logo flash pulizie
  • logo revolution
  • logo planetkoi small
  • logo finiture
  • ick logo template
  • montaggio mobili trento

Realizzato da: Daniele Gagliardi
Viale Monache 3 - 38062 Arco - TN
- Contattami -

Per essere più facile ed intuitivo, il blog fa uso dei cookie, piccole porzioni di dati che consentono di capire come gli utenti navighino e ne visualizzino le pagine. I cookie non registrano alcuna informazione personale sull'utente ed eventuali dati identificabili non verranno memorizzati.