IT TIP

설정 HTTP는 PHP 및 Apache를 사용하여 헤더를 만료합니다.

itqueen 2021. 1. 6. 20:33
반응형

설정 HTTP는 PHP 및 Apache를 사용하여 헤더를 만료합니다.


PHP + Apache에서 만료 헤더를 어떻게 설정할 수 있습니까? 현재 gzip으로 압축 된 리소스를 제공하기 위해 auto_prepend를 사용하고 있지만 HTTP 캐시도 최대화하고 싶습니다.

어떻게 설정할 수 있습니까?


이를 수행하는 두 가지 방법이 있습니다. 첫 번째는 PHP 코드에 헤더를 지정하는 것입니다. 만료 시간을 프로그래밍 방식으로 조정하려는 경우 유용합니다. 예를 들어 위키는 자주 편집되지 않는 페이지에 대해 더 긴 만료 시간을 설정할 수 있습니다.

header('Expires: '.gmdate('D, d M Y H:i:s \G\M\T', time() + (60 * 60))); // 1 hour

두 번째 선택은 .htaccess 파일 을 생성 하거나 httpd 구성을 수정하는 것입니다. 공유 호스팅 환경에서 .htaccess 파일을 수정하는 것은 매우 일반적입니다. 이렇게하려면 서버가 mod_expires , mod_headers 또는 둘 다를 지원하는지 알아야 합니다. 가장 쉬운 방법은 시행 착오이지만 일부 Apache 서버는 / server-info 페이지를 통해이 정보를 볼 수 있도록 구성되어 있습니다. 서버에 mod_expires 및 mod_headers가 모두 있고 정적 리소스에 대한 만료를 설정하려면 .htaccess 파일에 넣어보십시오.

# Turn on Expires and set default to 0
ExpiresActive On
ExpiresDefault A0

# Set up caching on media files for 1 year (forever?)
<FilesMatch "\.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$">
ExpiresDefault A29030400
Header append Cache-Control "public"
</FilesMatch>

다른 조합 및 더 많은 예는 http://www.askapache.com/htaccess/speed-up-your-site-with-caching-and-cache-control.html을 참조하십시오.


이 Apache 모듈은 도움이 될 수 있습니다 : http://httpd.apache.org/docs/2.0/mod/mod_expires.html


당신은 같은 것을 시도 했습니까?

<?php
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
?>

참조 URL : https://stackoverflow.com/questions/1036941/setup-http-expires-headers-using-php-and-apache

반응형