>  기사  >  백엔드 개발  >  PHP header() 함수: HTTP 응답 헤더를 설정하는 방법

PHP header() 함수: HTTP 응답 헤더를 설정하는 방법

PHPz
PHPz원래의
2023-11-03 08:06:151674검색

PHP header() 함수: HTTP 응답 헤더를 설정하는 방법

PHP는 동적 웹 페이지, 웹 사이트 개발 및 서버 관리에 사용되는 일반적으로 사용되는 서버 측 스크립팅 언어입니다. PHP에서는 header() 함수를 사용하여 HTTP 응답 헤더를 설정하고, 특정 HTTP 프로토콜 매개변수를 제어하고, 기능 향상 및 보안 보장을 달성할 수 있습니다.

이 기사에서는 일반적으로 사용되는 여러 HTTP 헤더(예: Content-Type, Location, Cache-Control, X-XSS-Protection 등)를 포함하여 PHP의 header() 함수를 사용하여 HTTP 응답 헤더를 설정하는 방법을 소개합니다. 구체적인 코드 예제를 제공하세요.

1. Content-Type 응답 헤더

Content-Type 응답 헤더는 HTTP 응답의 콘텐츠 유형을 지정하고 반환된 콘텐츠를 구문 분석하는 방법을 브라우저에 알려줍니다. 이 헤더를 설정하면 브라우저가 응답의 콘텐츠 유형을 추측하는 것을 방지하여 올바른 렌더링을 보장할 수 있습니다.

PHP 코드 예:

header("Content-Type: text/html; charset=UTF-8");

여기서 콘텐츠 유형은 text/html(text/HTML)로 설정되고 문자 세트는 UTF-8로 지정됩니다. 다른 일반적인 콘텐츠 유형으로는 application/json(JSON 데이터), application/xml(XML 파일), image/png(PNG 그림) 등이 있습니다. 필요에 따라 설정할 수 있습니다.

2. 위치 응답 헤더

위치 응답 헤더는 클라이언트가 요청한 리소스가 어느 URL로 이동해야 하는지를 나타내기 위해 HTTP 리디렉션에 자주 사용됩니다. 이 헤더는 브라우저가 지정된 페이지로 이동하여 관련 콘텐츠를 표시할 수 있도록 하는 리디렉션의 필수 조건입니다.

PHP 코드 예:

header("Location: https://www.example.com/page.php");

여기서 리디렉션된 URL은 https://www.example.com/page.php로 설정되어 있습니다. 이 헤더를 설정하면 브라우저가 자동으로 지정된 페이지로 이동하여 해당 콘텐츠를 표시합니다.

3. Cache-Control 응답 헤더

Cache-Control 응답 헤더는 캐싱 동작을 제어하는 ​​데 사용되며 서버에서 응답 콘텐츠를 캐시하는 방법을 브라우저에 지시합니다. 이 헤더를 적절하게 사용하면 웹사이트 대역폭 소비를 효과적으로 줄이고 액세스 속도와 사용자 경험을 향상시킬 수 있습니다.

PHP 코드 예:

header("Cache-Control: max-age=3600, public");

이는 최대 캐시 기간을 3600초(1시간)로 설정하고 모든 캐시에서 응답을 캐시할 수 있도록 지정합니다. 다른 일반적인 지침에는 캐시 없음(캐시가 매번 서버에 요청을 보내도록 강제), 저장 없음(캐시에서 응답 콘텐츠를 캐싱하는 것을 금지) 등이 포함됩니다. 실제 필요에 따라 설정할 수 있습니다.

4. X-XSS-Protection 응답 헤더

X-XSS-Protection 응답 헤더는 일반적으로 XSS(교차 사이트 스크립팅 공격)를 방지하는 데 사용됩니다. 사용자의 개인정보를 보호합니다.

PHP 코드 예:

header("X-XSS-Protection: 1; mode=block");

여기에서 X-XSS-Protection은 1로 설정됩니다. 이는 크로스 사이트 스크립팅 공격을 방지하는 기능이 활성화되고 "mode=block"이 지정되어 다음과 같은 경우 페이지 로드를 중지한다는 의미입니다. 공격이 발견되었습니다. 기타 설정 방법은 W3C 문서(https://www.w3.org/TR/2011/WD-xss-filtering-20111129/#xss-request-headers)를 참고하세요.

요약

이 글에서는 PHP의 header() 함수를 사용하여 Content-Type, Location, Cache-Control, X-XSS-Protection 및 기타 일반적인 헤더 설정과 특정 코드를 포함한 HTTP 응답 헤더를 설정하는 방법을 소개합니다. 예. 실제 개발에서 HTTP 응답 헤더를 합리적으로 사용하면 웹사이트의 기능과 보안을 효과적으로 강화하고 사용자 경험과 신뢰를 향상시킬 수 있습니다.

위 내용은 PHP header() 함수: HTTP 응답 헤더를 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.