私を否定する前に、以下の記事のほとんどを読んだと言いましょう:
https://stackoverflow.com/questions/10293545/strange-error-headers-already-sent-by-output-started-at
https:/ /stackoverflow.com/questions/1827314/cannot-modify-header-information-headers-already-sent-why-its-happening
"警告: ヘッダー情報を変更できません - ヘッダーは既に送信されています" エラー
Headers already sent error in CakePHP app
<?php
そして、タグの前または最後にスペースがないと確信しています。このエラーは、リダイレクトを行うと出力が 3 行目から始まることを示しています。また、ヘッダーを送信する前にスペースを入れても、文字を送信できないことも知っています。PHPタグの前にエラーが発生しないように、display_errorsがオフになっていることも確認しました。
root アクセス権があるので、php.ini で output_buffering をオンにして、output_buffering を完全に読み取るようにしましたが、それでも抵抗します。
私は4つのファイルを持っています:
1- config.php (ob_start() がありました)
<?php
session_start();
// some code here.....
// blah blah blah...
?>
2- header.php (ここに構成が含まれています)
<?php
require_once('./config.php');
if (!isset($_SESSION['user'])) {
header('Location:' . BASE_URI . '/index.php');
exit();
}
?>
3- index.php (ここでは、出力は 3 行目から開始されると言われていますheader()
:)
<?php include_once('./includes/header.php');
if (isset($_SESSION['karbar'])) {
header('Location: ./somewhere.php');
exit();
}
?>
4- footer.php (ob_end_flush() は mysqli_close(); の後にここで呼び出されました)
some code here...
</body>
</html>
<?php if (isset($dbc)) { mysqli_close($dbc); } ?>
それがどのように起こる可能性がありますか?私が見逃したものは残っていますか?