Help
Posted By Gregory

Avviso PHP: impossibile modificare le informazioni dell'intestazione


English version: PHP Warning: Cannot modify header information


Avviso PHP: impossibile modificare le informazioni sull'intestazione: intestazioni già inviate in…

A volte potresti vedere questo messaggio nel registro degli errori del server o visualizzarlo su una pagina web. È frustrante e sembra che ci sia qualcosa che non va nello script PHP menzionato nel messaggio. Infatti, questo messaggio indica un problema (un bug) in un altro script, plugin o tema. Puoi ricevere questo messaggio se usi un plugin difettoso e la visualizzazione degli errori PHP è attivata, cosa che normalmente non dovrebbe essere.

Questo messaggio appare quando una parte del codice PHP su un sito Web genera un output, che in genere è un messaggio di avviso PHP che non dovrebbe essere inviato e mostrato nel browser degli utenti. E questo output viene inviato prima che un'intestazione della pagina Web venga generata e inviata al browser dell'utente. L'intestazione di una pagina web può essere vuota o può gestire informazioni aggiuntive come i cookie.

Che l'intestazione sia vuota o meno, deve essere inviata prima di qualsiasi contenuto della pagina.

Se un plugin WordPress difettoso genera un avviso PHP prima che altri plugin inviino intestazioni a un browser, si verifica un errore del server con il messaggio "Avviso PHP: impossibile modificare le informazioni sull'intestazione – intestazioni già inviate in …" .

Un messaggio del genere può fuorviare chiunque perché non indica quale script o plugin ha causato questo errore. Quando un server web rileva qualsiasi output generato da un plugin senza intestazione inviata, crea automaticamente l'intestazione e la invia ai browser, quindi tutti gli altri plugin che non si aspettano tale comportamento, non sono in grado di inviare le loro intestazioni se necessario .

Come risolvere questo problema nel contesto dell'utilizzo di WP Cerber Security

  1. Disabilita la visualizzazione degli errori nelle impostazioni PHP del tuo pannello di controllo hosting. Se non hai accesso alle impostazioni PHP, chiedi assistenza al tuo provider di hosting.
  2. Disabilita la visualizzazione degli errori PHP nelle impostazioni di WP Cerber nella pagina di amministrazione della protezione avanzata.
  3. Nelle Impostazioni principali di WP Cerber, imposta "Carica motore di sicurezza" su "Modalità standard" o "Modalità avanzata".
  4. Controlla se la costante WP_DEBUG è definita nel file wp-config.php. Commenta la riga con doppie barre // o elimina semplicemente l'intera riga. Ecco come dovrebbe apparire:
    // define( 'WP_DEBUG', true );
    // define( 'WP_DEBUG', 1 );
  5. Aggiungi le seguenti righe all'inizio del file wp-config.php:
    @ini_set( 'display_errors', 0 );
    @ini_set( 'log_errors', 1 );

WP Cerber o WordPress possono essere la causa del problema?

No. L'unico codice che può causare questo problema è un plugin obsoleto/con errori o il tema attivo. Come trovare la causa principale? Controllare il registro degli errori del server. E per favore sbarazzati dei plugin obsoleti.


I'm a team lead in Cerber Tech. I'm a software & database architect, WordPress - PHP - SQL - JavaScript developer. I started coding in 1993 on IBM System/370 (yeah, that was amazing days) and today software engineering at Cerber Tech is how I make my living. I've taught to have high standards for myself as well as using them in developing software solutions.

View Comments
There are currently no comments.