如何解決PHP 出現Warning: Cannot modify header information錯誤?

來源:互聯網
上載者:User

標籤:php

其實,出現這種情況一般都是因為程式修改過程中出現以下幾個方面的錯誤操作導致:

原因一、UTF8編碼和BOM衝突(最常見)

如果你登入後台出現類似Warning: Cannot modify header information – headers already sent by (output started at /www/wp-content/themes/pozhejun/function.php:1) in /www/wp-includes/pluggable.php on line 897

Warning: Cannot modify header information – headers already sent by (output started at /www/wp-content/themes/pozhejun/function.php:1) in /www/wp-login.php on line 21

這些php代碼錯誤,首先考慮是不是function.php、wp-login.php、pluggable.php 這三個PHP檔案的編碼出現了問題。一般很有可能是用txt檔案編輯過這幾個報錯的檔案導致UTF8編碼和BOM衝突。

解決方案:使用Notepad++、UltraEdit、DW等編輯器編輯檔案,在“修改”菜單裡面選擇“標題/編碼”,將檔案編碼修改為原本的gkb或者utf-8格式。當然你也可以把檔案另存新檔,選ANSI儲存。

原因二:程式檔案<?php之前或者之後有空格(最常見)

解決方案:無論是程式本身echo出來的、被include 進來的程式echo的還是php代碼之外的html存在空格它們統統都是輸出。所以,要檢查下出錯的fuction.php等檔案中的<?php..?>是不是因為空白格或者換行導致的,特別是include或者require的檔案。刪除空格就能夠解決,這也是最常見的報錯原因之一。

原因三:外掛程式相容問題(常見)

如果是安裝WordPress外掛程式或者自己寫的程式出現以上問題,除了以上兩種可能,還有可能是setcookie的問題。

解決辦法:在輸出內容之前,產生cookie,可以在程式的最上方加入函數 ob_start(); 把下面函數加到檔案的開頭。

<?php ob_start (); ?>

原因四:php.ini配置問題

解決辦法:開啟 php.ini 然後把 output_buffering 設為 on ,重啟appache即可。這種方法開啟了所有php程式的輸出緩衝,這樣做可能影響php執行效率,這取決於伺服器的效能和代碼的複雜度。

原因五:header後加exit()

解決方案:在header後加上exit();

header ("Location: xxx");

exit();

以上就是WordPress出現“Warning: Cannot modify header information – headers already sent by ……”這樣的錯誤的常見原因和解決方案,如果是後期運營過程中出現這種情況一般是檔案修改或者外掛程式不相容出現的問題,在解決這個問題之前要清楚出現問題的這段時間到底是修改了什麼,這樣才能快速的找到出現錯誤的最終原因,從而快速的解決問題。


本文出自 “劉博方的部落格” 部落格,請務必保留此出處http://liubofang.blog.51cto.com/11162557/1870666

如何解決PHP 出現Warning: Cannot modify header information錯誤?

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.