DEV WIKI
백엔드 · 오류 메시지·상태명 확인

Warning: Cannot send session cookie - headers already sent...

PHP에서 세션 쿠키를 전송하려 할 때 헤더가 이미 전송된 경우 표시되는 경고입니다.

빠른 답변

확인 범위
`headers_sent()`로 헤더가 이미 전송되었는지 확인하고, `header()`, `setcookie()`, 세션 함수는 다른 콘텐츠보다 먼저 사용합니다.
먼저 확인할 항목
`headers_sent()`로 스크립트가 이미 헤더를 전송했는지 확인합니다.
적용 범위
화면 또는 로그에 같은 오류 메시지·상태명이 표시된 경우
출처
PHP
출처 확인일
2026-07-24
최종 검토
2026-07-24
관련 기술
오류·수정 제보 (새 창에서 열림)

이 문서의 범위

이 문서는 화면·로그의 오류 메시지 또는 상태명을 공식 자료와 대조하는 데 사용합니다. 이 문구만으로 실제 원인이나 변경 방법을 확정하지 않으며, 아래 관련 기술 문서에서 적용 환경을 추가로 확인해야 합니다.

현재 증상

  • 애플리케이션 오류 메시지

먼저 확인할 항목

`headers_sent()`로 스크립트가 이미 헤더를 전송했는지 확인합니다.

`headers_sent()`가 헤더가 이미 전송되었음을 확인하면 이 문서가 설명하는 상황에 해당합니다.

피해야 할 조치

주의

  • 출력 순서를 변경하기 전 현재 코드와 변경 대상을 기록하고, 가능한 경우 백업 또는 내보내기를 수행합니다.
  • 한 번에 한 항목만 변경하며, 장애나 오류가 발생하면 기록한 이전 값으로 복구합니다.

오류 메시지·상태명 확인 범위

Warning: Cannot send session cookie - headers already

sent...

증상

다음 오류 메시지가 표시됩니다.

Warning: Cannot send session cookie - headers already sent...

같은 상황에서 다음 메시지가 표시될 수 있습니다.

Cannot add header information - headers already sent...

확인

headers_sent()를 사용해 스크립트가 이미 헤더를 전송했는지 확인합니다.

  • 이미 헤더가 전송된 것으로 확인되면 이 문서가 설명하는 상황에 해당합니다.
  • 헤더가 아직 전송되지 않은 것으로 확인되면 이 원문만으로는 해당 상황으로 판정할 수 없습니다.

조치

header(), setcookie(), 세션 함수는 HTML 등 다른 콘텐츠를 출력하기 전에 사용합니다.

PHP 공식 문서는 Output Control 함수를 함께 참고하도록 안내합니다.

운영 주의사항

출력 순서를 변경하기 전 현재 코드와 변경 대상을 기록하고, 가능한 경우 백업 또는 내보내기를 수행합니다. 한 번에 한 항목만 변경하며, 장애나 오류가 발생하면 기록한 이전 값으로 복구합니다.

출처: PHP Manual — Using PHP FAQ (새 창에서 열림)

참고 자료

PHP: Using PHP - Manual (새 창에서 열림)

PHP · 공식 자료 · 확인 범위: `header()`, `setcookie()`, 세션 함수는 출력 스트림에 헤더를 추가해야 합니다., 헤더는 다른 모든 콘텐츠보다 먼저 전송할 수 있습니다., `headers_sent()`는 스크립트가 이미 헤더를 전송했는지 확인합니다., PHP 공식 문서는 Output Control 함수를 함께 참고하도록 안내합니다. · 확인일: 2026-07-24