Help
Posted By Gregory

PHP-waarschuwing: kan header-informatie niet wijzigen


English version: PHP Warning: Cannot modify header information


PHP-waarschuwing: kan header-informatie niet wijzigen – headers zijn al verzonden in …

Soms ziet u dit bericht in het foutenlogboek van de server of wordt het weergegeven op een webpagina. Het is frustrerend en het lijkt erop dat er iets mis is met het PHP-script dat in het bericht wordt genoemd. Dit bericht duidt in feite op een probleem (een bug) in een ander script, plug-in of thema. U kunt dit bericht krijgen als u een buggy-plug-in gebruikt en het weergeven van PHP-fouten is ingeschakeld, wat normaal gesproken niet zou moeten zijn.

Dit bericht verschijnt wanneer een stukje PHP-code op een website een uitvoer genereert, meestal een PHP-waarschuwingsbericht dat helemaal niet mag worden verzonden en weergegeven in de browser van de gebruiker. En deze uitvoer wordt verzonden voordat een koptekst van de webpagina wordt gegenereerd en naar een gebruikersbrowser wordt verzonden. De header van een webpagina kan leeg zijn of kan aanvullende informatie verwerken, zoals cookies.

Of de kop nu leeg is of niet, deze moet vóór elke pagina-inhoud worden verzonden.

Als een WordPress-plug-in met fouten een PHP-waarschuwing genereert voordat andere plug-ins headers naar een browser sturen, leidt dit tot een serverfout met het bericht "PHP Warning: Cannot modified header information – headers already sent in …" .

Zo'n bericht kan iedereen misleiden omdat het niet vertelt welk script of welke plug-in deze fout heeft veroorzaakt. Wanneer een webserver uitvoer detecteert die is gegenereerd door een plug-in zonder dat er een header is verzonden, wordt de header automatisch gemaakt en naar de browsers verzonden, zodat alle andere plug-ins die dergelijk gedrag niet verwachten, hun headers niet kunnen verzenden als dat nodig is .

Hoe dit probleem op te lossen in de context van het gebruik van WP Cerber Security

  1. Schakel de weergave van fouten uit in de PHP-instellingen van uw hostingconfiguratiescherm. Als je geen toegang hebt tot PHP-instellingen, vraag dan je hostingprovider om hulp.
  2. Schakel PHP-foutweergave uit in de WP Cerber-instellingen op de Hardening-beheerderspagina.
  3. Stel in de hoofdinstellingen van WP Cerber "Laad beveiligingsengine" in op "Standaardmodus" of "Geavanceerde modus".
  4. Controleer of de constante WP_DEBUG is gedefinieerd in het bestand wp-config.php. Becommentarieer de regel met dubbele schuine strepen // of verwijder gewoon de hele regel. Zo zou het eruit moeten zien:
    // define( 'WP_DEBUG', true );
    // define( 'WP_DEBUG', 1 );
  5. Voeg de volgende regels toe aan het begin van het bestand wp-config.php:
    @ini_set( 'display_errors', 0 );
    @ini_set( 'log_errors', 1 );

Kan WP Cerber of WordPress de oorzaak van het probleem zijn?

Nee. De enige code die dit probleem kan veroorzaken, is een verouderde plug-in met fouten of het actieve thema. Hoe de oorzaak vinden? Controleer het foutenlogboek van de server. En verwijder verouderde plug-ins.


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.