ホームページ  >  記事  >  バックエンド開発  >  PHP の mail() 関数で「Additional_header に複数の改行または不正な改行が見つかりました」というエラーが発生するのはなぜですか?

PHP の mail() 関数で「Additional_header に複数の改行または不正な改行が見つかりました」というエラーが発生するのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-17 17:40:02701ブラウズ

Why Am I Getting a

PHP mail() 関数での複数の改行エラー

ユーザーは、PHP の mail() 関数の使用中にエラーが発生し、次のメッセージを受け取りました。 「複数の改行または不正な改行が見つかりましたAdditional_header."

原因

このエラーは、PHP バージョン 5.5.26 への最近の更新によってトリガーされました。セキュリティの脆弱性が解決され、Additional_header 引数での複数の改行または不正な形式の改行が禁止されました。これにより、悪意のある攻撃者がヘッダーを通じて追加のメッセージを挿入することが防止されます。

解決策

このエラーを解決するには、次の手順に従います。

  • ヘッダーのサニタイズ:Additional_header パラメーターに複数の改行が含まれていないことを確認してください。無効な組み合わせには、 rr、r 、rnrn、nn、および n が含まれます。
  • ヘッダーとメッセージを分離する: 追加のヘッダーをAdditional_header 引数に配置し、電子メール メッセージは message 引数に渡す必要があります。 。ヘッダーにはメッセージを含めないでください。

追加リソース

  • PHP セキュリティ バグ レポート: https://bugs.php.net/ bug.php?id=68776
  • C コードの違い: http://git.php.net/?p=php-src.git;a=blobdiff;f=ext/standard/mail.c;h=448013a472a3466245e64b1cb37a9d1b0f7c007e;hp=1ebc8fecb7e f4c266a341cdc701f0686d6482242;hb=9d168b863e007c4e15ebe4d2eecab df8b0582e30;hpb=eee8b6c33fc968ef8c496db8fb54e8c9d9d5a8f9

以上がPHP の mail() 関数で「Additional_header に複数の改行または不正な改行が見つかりました」というエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。