Risolvere errore cannot modify headers information: Headers_already_sent

WordPress: vediamo come risolvere l’errore cannot modify headers information: Headers_already_sent in pochi semplici passi.

Come si presenta e da cosa è dovuto

Warning: Cannot modify header information - headers already sent by (output started at

Molto spesso è dovuto a una codifica errata del file php oppure alla presenza di caratteri o spazi prima o dopo i tag di chiusura e apertura di php.

Come risolvere l’errore

  • Scarica il file menzionato nell’error_log o nel messaggio di errore
  • Apri con un’editor di testo o HTML (No word, No editor visuali)
  • Controlla che non ci siano caratteri o spazi prima dell’inizio del tag <?php
  • Controlla che il file finisca con ?> senza ulteriori caratteri o spazi a seguire.
  • Prima di salvare, assicurati che l’encoding NON sia UTF-8 BOM ma semplicemente UTF-8 senza il suffisso BOM. Se è presente il suffisso salva con nome e ri-codifica il file.

Ancora problemi? Ecco un fix “brutale”

Aprite il   file incriminato (che appare nella prima parentesi ) nell’esempio sotto riportato – ad esempio – aprite il functions.php

es.Warning: Cannot modify header information – headers already sent by (output started at /home/tema/functions.php:587) in /home/tema/public_html/wp-login.php on line 376

Posizionare in alto  e all’inizio del file:

<?php ob_start(); ?>

Dovrebbe risolvere 😉

Questo articolo ti è stato utile? Condividilo sui tuoi social network preferiti!

Immagine “internet” disponibile su shutterstock

  1. Purtroppo ho provato con tutti i metodi ma non ha funzionato…
    Quando inserisco la sequenza che mi suggerisci all’inizio del file e provo a fare login al mio account wordpress mi reindirizza ad una pagina con il contenuto del file config.php

    1. Ciao prova usando questo editor [http://www.vim.org/download.php] e apri il file (o i file) incriminati. Se trovi caratteri strani fai cleanup.
      Se usi linux puoi benissimo usare sudo nano o sudo gedit (o in alternativa) installi vim [sudo apt-get vim]e usi direttamente vim anche lì 🙂

  2. Ciao! Passando a PHP 7.2 avevo riscontrato l’errore “cannot modify headers information: Headers_already_sent”, errore che ho risolto con il tuo brutal fix. Il sito funziona correttamente, quindi apparentemente tutto ok.
    Poi però ho provato ad accedere alla schermata di login WP, e una volta che inserisco user e pass di Admin e si apre una pagina bianca con scritto:

    Fatal error: Uncaught Error: Call to a member function has_cap() on null in /homepages/13/d585548573/htdocs/…/wp-login.php:842 Stack trace: #0 {main} thrown in /homepages/13/d585548573/htdocs/…/wp-login.php on line 842

    La linea ‘incriminata’ è questa:
    elseif ( !$user->has_cap(‘edit_posts’) )

    Non ho modificato i ruoli di Admin, né le password.

    Riesci ad aiutarmi?

    Grazie!

    S.

      1. In directory trovo questi plugin, ma non ricordo se fossero tutti attivi:
        Askimet
        cookie-notice
        limit-login-attempts
        sitelinks-search-box
        tinymce-advanced
        wordpress-seo
        wp-to-top

        Potrebbe essere limit-login-attempts? Dici che devo eliminarlo?

  3. Meraviglioso, dopo due giorni di sbattere la testa ho risolto grazie alla vostra guida ….Farò certamente una donazione per sostenere il vostro lavoro. Grazie !!!!!!!!!!!!!!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Server
Up Next:

Redirect vecchi url e query a nuovo dominio 301 usando htaccess

Redirect vecchi url e query a nuovo dominio 301 usando htaccess