[펌] Apache의 P3P 관련 헤더 설정 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

[펌] Apache의 P3P 관련 헤더 설정 정보

기타 [펌] Apache의 P3P 관련 헤더 설정

본문

IE6에서 쿠키를 거부하는 P3P 문제와 관련해 아파치에서 P3P 정책의 적용 방법입니다.
P3P(Platform for Privacy Preferences)란?
세계 웹 표준기구인 W3C에서 개발한 프라이버시 보호 관련 표준기술입니다.  IE6 이상부터 지원하며, 특히 웹상에서 개인정보 보관이나 개인 행적 추적(Tracking) 등에 많이 사용되는 쿠키와 관련해 많은 제한을 가하고 있습니다.
프레임이나 iFrame, 이미지 등이 원본 HTML과 서로 다른 도메인으로 되어 있는 경우, IE6의 기본 보안 설정으로 업체 홈페이지 접속시 하단 상태바에 빨간 경고가 나타나며, 이후 브라우져에서 해당 사이트에서 보내는 쿠키를 받지 않습니다.
이 문제를 해결하기 위해서는 P3P 압축정책을 HTTP 헤더를 통해 내보내야 하는데, 다음과 같은 아파치 설정을 해주면 됩니다.
<IfModule mod_headers.c>
Header add P3P "CP="CAO DSP LAW CUR ADM DEV TAI PSA IVAo CONo HISo OTP OUR DEL LEG SAMo PHY ONL UNI GOV COM PUR NAV INT STA""
</IfModule>
그리고, 위 설정이 실제 적용될 수 있도록 HTTP 헤더 관련 아파치 DSO인 각각의 아파치 버전에 맞는  mod_headers.so 파일을 컴파일하여, 아파치 DSO 모듈 디렉토리(1.3.x:libexec, 2.x:modules) 디렉토리에 넣어두고, httpd.conf 파일에서 모듈을 활성화시켜야 합니다.
이제 웹서버 차원에서 모든 response 헤더에 P3P 압축정책을 붙여주므로, 프로그램 상에서 별도로 P3P 관련 헤더 처리를 해주지 않으셔도 됩니다.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
[아파치] P3P 지원 사이트 적용  

From http://apache.kr.net
-------------------------
mod_header 를 넣어서 Apache 가 Header 에 정보를 추가할 수 있도록 재컴파일 합니다. 
컴파일 하는 방법은, 아파치 소스 디렉토리에서 configure 를 실행할때 
--enable-module=headers 
를 추가하면 됩니다. 

재컴파일 후 아파치 실행화일이 있는 위치에서, "./httpd -l" 명령을 실행하여, 
Compiled-in modules: 출력 결과에 mod_headers.c 가 출력되는지 확인하십시오. 
컴파일이 완료되면, httpd.conf 에 다음의 설정을 추가하고 웹서버를 재시작 하십시오. 

<Location / > 
Header append P3P "CP="NOI DEVa TAIa OUR BUS UNI"" 
</Location> 

# apachectl restart
[이 게시물은 관리자님에 의해 2011-10-31 17:30:25 Apache에서 이동 됨]
추천
0
  • 복사

댓글 3개

좋은 정보네요.

해보니까, 윈용 apache에서는

LoadModule headers_module modules/mod_headers.so

<IfModule mod_headers>
Header add P3P "CP="CAO DSP LAW CUR ADM DEV TAI PSA IVAo CONo HISo OTP OUR DEL LEG SAMo PHY ONL UNI GOV COM PUR NAV INT STA""
</IfModule>
로 세팅하면 되는군요.
오류 나옵니다....ㅋㅋ

윈도우용 apache 에서는

LoadModule headers_module modules/mod_headers.so


<IfModule headers_module>
Header add P3P "CP='CAO DSP LAW CUR ADM DEV TAI PSA IVAo CONo HISo OTP OUR DEL LEG SAMo PHY ONL UNI GOV COM PUR NAV INT STA'"
</IfModule>

이렇게 해줘야하는거 아닌가요? ....^^
좋은 정보 감사합니다....^^

오타가 있는듯 합니다...

"  " 내부에 또  "  " 가 있네요... ' ' 로 변경해줘야할듯 합니다...^^


수정하여 바로 적용시켰습니다.....^^
© SIRSOFT
현재 페이지 제일 처음으로