"헤더 정보를 수정할 수 없음 - 헤더가 이미 보낸 사람" 오류를 수정하는 방법
게시 됨: 2021-11-26대부분의 WordPress 오류 메시지는 사이트에서 문제를 일으키는 원인에 대한 아이디어를 제공합니다. "경고: 헤더 정보를 수정할 수 없음 - 헤더가 이미 보낸 사람" 오류도 예외는 아닙니다. 코드의 문제로 인해 PHP 파일을 실행할 수 없는 경우 이 메시지가 표시됩니다.
"헤더 정보를 수정할 수 없음" 오류에 대한 몇 가지 잠재적인 원인이 있습니다. 다행히 메시지 자체가 문제를 일으키는 파일을 알려줍니다. 문제가 포함된 코드 줄도 가리킵니다.
이 기사에서는 이 오류와 그 원인에 대해 논의할 것입니다. 그런 다음 문제를 해결할 수 있는 두 가지 방법을 살펴보겠습니다. 일하러 가자!
"헤더 정보를 수정할 수 없음 - 헤더가 이미 보낸 사람" 오류의 원인
앞에서 언급했듯이 사이트의 .php 파일 중 하나를 실행할 수 없을 때 이 오류가 발생합니다. WordPress는 핵심 기능을 위해 wp-config.php 및 functions.php와 같은 .php 파일에 의존합니다.
웹사이트가 로드해야 하는 .php 파일 중 하나에 문제가 있는 경우 다음과 같은 오류 메시지가 표시됩니다.
Warning: Cannot modify header information - headers already sent by (output started at /home/public_html/wp-config.php:#) in /home/public_html/wp-includes/file-example.php on line 33
다행히 "헤더 정보를 수정할 수 없습니다" 오류는 문제 해결을 비교적 간단하게 만드는 많은 정보를 제공합니다. 메시지는 두 개의 파일을 가리킵니다. 첫 번째 파일에는 문제가 있어 두 번째 파일이 실행되지 않습니다.
오류 메시지의 끝에 "행 XX"라는 섹션이 표시됩니다. 문제를 일으키는 특정 코드의 위치를 보여줍니다.
일반적으로 PHP 코드의 문제는 수정하기가 매우 쉽습니다. 오류 메시지를 유발할 수 있는 몇 가지 일반적인 원인은 다음과 같습니다.
- 코드의
<?php
세그먼트 앞이나 닫는?>
태그 뒤의 공백 - PHP 헤더 함수 앞 의 HTML 블록
- PHP 헤더 함수 앞에 추가된
print
또는echo
문 - 플러그인 코드 문제
이러한 유형의 오류를 수정하려면 최소한 PHP 코드 수정에 약간 익숙해져야 합니다. 코드를 직접 추가할 필요가 없습니다.
그래도 문제를 식별하는 데 약간의 추가 도움이 필요할 수 있습니다. 문제가 PHP 헤더 함수 앞의 공백이나 명령문과 관련이 없는 경우 특히 그렇습니다.
"경고: 헤더 정보를 수정할 수 없음 - 헤더가 이미 보낸 사람" 오류를 해결하는 방법(2가지 방법)
"헤더 정보를 수정할 수 없음 - 헤더가 이미 전송됨" 오류를 해결하는 두 가지 방법이 있습니다. 첫 번째 방법에서는 WordPress 대시보드를 종료할 필요가 없습니다.
그러나 두 번째 전략은 대시보드에 액세스할 수 없거나 WordPress를 사용할 수 없는 경우 FTP/SFTP를 사용합니다.
첫 번째 문제 해결 방법부터 시작하겠습니다.
1. 플러그인/테마 편집기로 오류 수정 또는 플러그인 교체
"Cannot modify header information - headers already sent by" 오류가 발생했을 때 가장 먼저 해야 할 일은 문제를 일으키는 파일을 여는 것입니다. 그런 다음 메시지가 나타내는 줄을 찾습니다.
예를 들어 다음과 같은 오류가 표시되면 테마의 functions.php 파일을 살펴봐야 한다는 의미입니다.
Warning: Cannot modify header information - headers already sent by (output started at /home/public_html/wp-content/themes/twentytwentyone/functions.php:#) in /home/public_html/wp-includes/file-example.php on line 1
이 시나리오에서는 WordPress 테마 편집기를 사용하여 문제의 원인에 접근할 수 있습니다. 액세스하려면 모양 > 테마 편집기 로 이동합니다.
일단 들어가면 오른쪽에 있는 메뉴를 사용하여 액세스해야 하는 파일을 선택합니다.
자세히 보면 <?php
태그 앞에 공백이 여러 개 있는 것을 알 수 있습니다. 오류 메시지 자체는 1번 줄을 가리킵니다. 따라서 이것은 공백이 문제의 원인임을 알려줍니다.
이 예에서는 공백을 제거하고 파일 업데이트 를 클릭하기만 하면 됩니다. 이제 웹사이트를 새로고침하면 오류가 사라집니다.
WordPress 플러그인 편집기( Plugins > Plugin Editor )를 사용하여 동일한 프로세스를 적용할 수 있습니다. 이 방법은 오류 메시지가 잘못된 플러그인 파일을 가리키는 경우에 적용할 수 있습니다.
또는 WordPress 플러그인 디렉토리에 있는 파일 중 하나를 나타내는 오류가 발생할 수 있습니다. 이 시나리오에서는 해당 플러그인을 제거하고 다시 설치할 수 있습니다. 대부분의 경우 문제가 해결됩니다.
그러나 사용하는 도구에 따라 해당 플러그인의 구성이 손실될 수 있다는 점에 유의하십시오. 따라서 추가 기능을 다시 설정해야 할 수 있습니다.
2. FTP/SFTP를 통해 문제 파일 편집
경우에 따라 "헤더 정보를 수정할 수 없음 - 헤더가 이미 보낸 사람" 오류의 원인은 WordPress 테마 또는 플러그인 편집기를 사용하여 액세스할 수 있는 파일에 있지 않습니다. 또는 WordPress가 아닌 사이트를 사용 중일 수 있습니다.
이러한 시나리오에서 가장 좋은 방법은 FTP/SFTP를 사용하여 문제 파일에 액세스하는 것입니다. 이렇게 하려면 FileZilla 플랫폼과 같은 FTP 또는 SFTP 클라이언트를 사용해야 합니다.
또한 웹사이트의 FTP/SFTP 자격 증명에 액세스해야 합니다. 대부분의 경우 호스팅 패널에서 찾을 수 있어야 합니다.
전자 상거래 웹사이트를 위한 놀랍도록 빠르고 안정적이며 완전히 안전한 호스팅이 필요하십니까? Kinsta는 이 모든 것과 WooCommerce 전문가의 연중무휴 세계적 수준의 지원을 제공합니다. 우리의 계획을 확인하십시오
Kinsta를 사용하는 경우 MyKinsta에 액세스하고 사이트에서 웹 사이트 를 선택하고 해당 정보 탭을 클릭할 수 있습니다.
자격 증명이 있으면 FTP 또는 SFTP 클라이언트를 사용하여 웹 사이트에 연결합니다. 사이트의 루트 폴더를 찾아야 합니다. 일반적으로 해당 이름은 root, public_html , public 또는 자체 사이트 이름이어야 합니다.
다음은 WordPress 루트 폴더 내부의 모습입니다.
계속해서 "헤더 정보를 수정할 수 없음 - 헤더가 이미 보낸 사람" 오류가 나타내는 파일을 찾으십시오. 예를 들어 문제가 public/wp-config.php
인 경우 파일을 마우스 오른쪽 버튼으로 클릭하고 보기/편집 옵션을 선택합니다.
이 옵션은 기본 텍스트 편집기를 사용하여 선택한 파일을 엽니다. 문서가 열리면 오류 메시지가 가리키는 줄로 이동하여 문제를 찾습니다.
오류를 찾을 수 없으면 PHP 파일 작업 경험이 있는 사람에게 문의해야 할 수 있습니다. 그러나 PHP 헤더 앞의 공백 문제나 명령문을 처리한다고 가정해 보겠습니다. 이 경우 스스로 문제를 해결할 수 있어야 합니다.
완료되면 변경 사항을 파일에 저장하고 FTP/SFTP 클라이언트를 닫습니다. 웹사이트에 다시 액세스하면 오류가 사라집니다.
이요약
"경고: 헤더 정보를 수정할 수 없음 - 헤더가 이미 보낸 사람" 오류는 긴 메시지를 출력하기 때문에 위협적일 수 있습니다. 그러나 그 자세한 오류 메시지는 이 버그를 비교적 쉽게 문제를 해결할 수 있도록 합니다. 다른 문제와 달리 이 문제는 문제를 일으키는 파일과 조사해야 하는 코드 줄을 알려줄 만큼 정중합니다.
오류를 일으키는 파일에 따라 문제 해결을 위한 두 가지 방법이 있습니다.
- 플러그인/테마 편집기를 사용하여 오류를 수정하거나 플러그인을 교체하세요.
- FTP/SFTP 클라이언트를 통해 문제 파일을 편집하십시오.
이 오류의 원인을 찾는 것은 간단합니다. 그러나 PHP에 익숙하지 않은 경우 수정하는 것이 문제가 될 수 있습니다.
이 오류를 수정하는 데 여전히 문제가 있습니까? 아래 의견에서 커뮤니티와 경험을 공유하십시오!