본문 바로가기
Apache

아파치 웹서버 속도향상 - HTTP 압축 및 캐싱

by 씨엔아이소프트 2021. 2. 25.
반응형

Apache 웹서버 속도를 향상시켜보자

HTTP 압축 및 캐싱

httpd.conf 또는 apache2.conf 하단에 추가

 

<IfModule expires_module>
  ExpiresActive On
  ExpiresByType image/x-icon "access plus 1 month"
  ExpiresByType image/gif "access plus 1 month"
  ExpiresByType image/png "access plus 1 month"
  ExpiresByType image/jpg "access plus 1 month"
  ExpiresByType image/jpeg "access plus 1 month"
  ExpiresByType application/x-font-ttf "access plus 1 month"
  ExpiresByType application/x-font-woff "access plus 1 month"
  ExpiresByType text/css "access 1 month"
  ExpiresByType text/javascript "access plus 1 month"
  ExpiresByType application/javascript "access plus 1 month"
  ExpiresByType application/x-javascript "access plus 1 month"
</IfModule>
 
<IfModule deflate_module>
  AddOutputFilterByType DEFLATE text/plain text/html text/xml text/css application/xml application/xhtml+xml application/rss+xml
  AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript
  SetOutputFilter DEFLATE
  DeflateCompressionLevel 9
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
  SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|bmp|zip|tar|rar|alz|a00|ace|t?gz|bz2|7z|txt)$ no-gzip dont-vary
  SetEnvIfNoCase Request_URI \.(?:mp3|mpe?g|wav|asf|wma|wmv|swf|exe|pdf|doc|xsl|hwp|java|c)$ no-gzip dont-vary
  SetEnvIfNoCase Request_URI \.(?:mp4|webm|flv|avi|sqllite|eot|woff2?|ttf|ppt|pdf)$ no-gzip dont-vary
</ifModule>

 

php opcache 활성화

opcache 는 php 5.5 이상에 내장되어 배포 되었으며 php 5.5 이상일 경우 php.ini 에 설정을 추가하는것만으로 동작한다.

; Zend Opacache 활성화 여부 결정
opcache.enable=1

; PHP CLI 버전에서 Zend Opcache 활성화 여부 결정
opcache.enable_cli=1

; Opcache 공유 메모리 저장소 사이즈
opcache.memory_consumption=128

; 메모리에서 interned 문자열을 위해 사용할 메모리량
opcache.interned_strings_buffer=8

; Opcache 해쉬 테이블에서 가질수 있는 키값의 최대값(200~100000 사이에 값만 가질 수 있음)
opcache.max_accelerated_files=4000

; 공유 메모리 저장소 할당을 위해서 변화된 것들에 대해 얼마나 자주 파일 타임 스탬프를 체크(초단위)할지 ( 0은 늘 검사)
opcache.revalidate_freq=60

; 활성화 시 accelerated code 에 대해서 사용되어짐
opcache.fast_shutdown=1

; 활성화 시 Opcache는 현재 작업디렉토리를 스크립트 키에 추가하고, 같은 이름을 가진 파일들 사이에 가능한 충돌을 제거한다.
; 비활성화 시 성능이 향상되지만, 존재하는 애플리케이션이 깨질 수 있음.
opcache.use_cwd=1

; 비활성화 시, Opcache 를 수동으로 리셋해주거나, 파일시스템이 변한것에 대해 효과를 얻기위해서는 웹서버를 재시작 해야함.
opcache.validate_timestamps=1

; 재시작이 스케줄 될때까지 "wasted" 최대 메모리 비율
opcache.max_wasted_percentage=5

 

반응형

댓글