headers already sent by.... 오류해결|작성자 글쟁이
페이지 정보
작성자 서방님 댓글 0건 조회 125회 작성일 14-12-05 10:57본문
출처 : http://kimtaiyong.blog.me/150067618678
headers already sent by ..... 오류
아 정말이지 저놈의 오류 때문에 몇일을 고생했느냐 ㅠ_ㅠ
계속 자료를 찾아보고 했지만.. 상단에 계속 뜨더라 -_-;
해결책을 많이 찾아봤지만.. 다 같이 말하는건 <? 와 ?> 사이에 공백을 없애라는 말이 대부분..
맞는 말이긴 하지만 나에게 맞지는 않았다. 왜냐 하면 나에겐 공백이 없었기 때문이다. ㅠ_ㅠ
새로 다 다운받아(백업용) 디비 날리고 다시 재 설치 까지 했는데
그대로 였다.
이것이 캐릭터셋을 euc-kr 일때는 문제가 되지 않는데, utf-8 을 했을경우 많이 나타난다
메모장으로 매번 수정을 했었는데 메모장에서 계속 ansi 로 저장하기 때문이다.. ㅠㅠ
3일간의 검색결과.. 드디어.. 드디어 다른 말을 찾았다.
--/
노트패드나 기타 편집기로 플러그인 파일을 utf-8로 저장하여 실행해 보면 어김없이 Headers already sent … 오류가 발생하게 된다. 이 오류가 발생하는 좀더 근본적인 이유는 PHP가 이 utf-8 BOM을 무시하지 않고 하나의 문자로 읽기 때문이다. 이 문제를 해결하려면 파일을 utf-8 형식으로 저장할 때 utf-8 BOM을 추가하지 말아야 한다. 그러나 노트패드는 파일을 utf-8 형식으로 저장할 때 무조건 BOM을 추가하므로 노트패드로는 해결 불가능하다.
그러나, 좀더 고급인 편집기에서는 “Unicode Signature(BOM) 추가 여부”를 옵션으로 설정할 수 있다. 주로 파일저장과 관련한 옵션에 이 설정항목이 있다. 대부분의 경우라면 기본값으로 Unicode Signature를 추가하도록 설정되어 있으므로 이를 변경해야 한다. 그리고 나서 파일을 utf-8 인코딩 형식으로 저장해야 한다.
--/
이것이였다 -_-
내가 사용하는 에디터는 Editplus 다. 옵션을 뒤지기 시작했다.
위의 내용과 맞아 떨어지는 메뉴는 보이지 않았으나.. 비슷한 문구가 보였다.
바로 요녀석이다 -_- 이녀석 때문에 내가 3일을 고생하다니 ㅠ_ㅠ 역시 무지(無知)는 건강에 해롭다;;
euc-kr 코딩하기 전까지는 ANSI 가 필요 없을거 같아서 아예 기본인코딩을 UTF-8로 바꿔 버리고
중요한 아래 부분인.. 식별기호제거!!!!! 두둥!
이후 적용하고 파일을 재 업로드 하니 다시 나왔다 ㅠ_ㅠ 아 감격 ㅠㅠ
==============================================================================
- 헤더 출력전 헤더보다 먼저 문자 출력이 되는 경우.
(include,require 되는 파일도 포함)
- echo / print 등 문자 출력 명령이 존재하는 경우.
- 소스코드 수정에 사용하신 텍스트 편집기나 웹에디터에 따라 빈칸/공란도 오류의 원인이 될수 있습니다.
오류는 connect.php ,header.php 또는 환경설정파일들을 가르키지만 실제로는 오류메세지를 보이는 파일들을 include한 파일들중에 문제가 있을 확률도 크기때문에 오류정보가 가르키는 파일에서 문제가 해결되지 않을 경우, 오류난 파일을 include한 파일들을 모두 점검해야 합니다.
이 문제는 개발된지 오래되거나, UTF8 character set과 호환되지 않는 일부 텍스트편집기에 의해 발생활 확률도 있습니다. (BOM코드를 첫머리에 삽입하는 윈도우 메모장이나... 크랙된 텍스트편집기 - 크랙된것들이 대체로 업데이트가 안되어 있음.)
- 윈도우용 텍스트편집기 사용시 꼭 가장 최근에 업데이트되어 버그발생확률이 적은것을 선택후 소스코드 수정에 이용하여 주십시요. (예를들어 Acroedit)
웹서버가 UNIX(LINUX) 계열일때는 O/S에 포함된 VI 편집기등을 사용하여 텍스트파일을 작성하거나 수정하시는것이 가장 좋은 방법입니다.
댓글목록
등록된 댓글이 없습니다.