Risolvere errore cannot modify headers information: Headers_already_sent

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?

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