Nginx 웹 사이트 캐 시 만 들 기
다음 에 먼저 완전한 인 스 턴 스 설정 코드 를 드 립 니 다.
# user nginx
#user www;
# nginx ,( )
worker_processes 2;
error_log logs/error.log;
#
pid logs/nginx.pid;
events {
# ( = * )
worker_connections 1024;
}
# http
http {
#
include mime.types;
#
default_type application/octet-stream;
#
log_format main '$remote_addr - $remote_user [$time_local] "$request"'
'$status $body_bytes_sent "$http_referer"'
'"$http_user_agent" "$http_x_forwarded_for" "$host"'
#
charset utf-8;
access_log logs/access.log main;
# ,sendfile nginx sendfile , on,
# IO , off, I/O , 。 : off。
sendfile on;
# ,
keepalive_timeout 180;
# START
gzip on;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_proxied any;
gzip_min_length 1100;
gzip_buffers 16 8k;
gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;
# Some version of IE 6 don't handle compression well on some mime-types,
# so just disable for them
gzip_disable "MSIE [1-6].(?!.*SV1)";
# Set a vary header so downstream proxies don't send cached gzipped
# content to IE6
gzip_vary on;
# END
# START
#
proxy_buffering on;
proxy_cache_valid an 10m;
#
proxy_cache_path data/cache levels=1:2 keys_zone=mycache:8m max_size=1000m inactive=600m;
#
proxy_temp_path data/temp;
proxy_buffer_size 4k;
proxy_buffers 100 8k;
# END
#
upstream mbp_mapp.com { #
server 127.0.0.1:2048 weight=5;
}
#
server {
#
listen 8086 ;
# ,
server_name localhost;
# ssl
#ssl off;
#
#ssl_certificate ssl/ca/server.crt;
#ssl_certificate_key ssl/ca/server.key;
location / { #
root html;
index index.html index.htm;
}
}
#
server {
#
listen 8086 ;
access_log logs/mapp.log main;
error_log logs/mapp_error.log;
# ,
server_name 192.168.31.228;
location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://mbp_mapp.com/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
#
proxy_cache mycache;
proxy_cache_valid 100;
#
proxy_max_temp_file_size 0;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
access_log logs/localhost_8843_access.log;
}
}
1. 이 설정 에서 캐 시 에 대한 가장 중요 한 설정 은 다음 과 같 습 니 다 (
버퍼 열기):
# START
#
proxy_buffering on;
proxy_cache_valid an 10m;
#
proxy_cache_path data/cache levels=1:2 keys_zone=mycache:8m max_size=1000m inactive=600m;
#
proxy_temp_path data/temp;
proxy_buffer_size 4k;
proxy_buffers 100 8k;
# END
이 프로필 은 주로 캐 시 를 열 고 캐 시 크기 를 설정 합 니 다. 다음은 캐 시 속성 에 대해 설명 하 겠 습 니 다.proxy_buffering
proxybuffering on|off
기본 값: proxybuffering on
문맥: http, server, location
이 명령 은 백 엔 드 에서 프 록 시 서버 의 응답 내용 버퍼 를 엽 니 다.
버퍼 가 열 리 면 nginx 는 프 록 시 백 엔 드 서버 가 가장 빠 른 속도 로 응답 할 것 이 라 고 가정 하고 내용 을 명령
proxy_buffer_size
에 저장 합 니 다. 화해시키다 proxy_buffers
지정 한 버퍼 안에 있 습 니 다.응답 내용 을 메모리 에 넣 을 수 없다 면 일부 내용 은 디스크 에 기 록 됩 니 다.
버퍼 가 닫 히 면 응답 내용 은 가 져 온 내용 에 따라 클 라 이언 트 로 즉시 동기 화 됩 니 다.
nginx 는 프 록 시 전체 응답 내용 의 크기 를 계산 하지 않 습 니 다. nginx 는 서버 에서 받 아들 일 수 있 는 최대 데 이 터 는 명령
proxy_buffer_size
에 의 해 지정 되 었 습 니 다.proxy_cache_유효한 문법: proxycache_valid reply_code [reply_code ...] time; 기본 값: None 사용 필드: http, server, location 은 응답 에 따라 캐 시 시간 을 설정 합 니 다.
proxy_cache_path
proxycache_path path [levels=number] keys_zone=zone_name:zone_size [inactive=time] [max_size=size];
기본 값: None
사용 필드: http
명령 은 캐 시 경로 와 다른 매개 변 수 를 지정 하고 캐 시 된 데 이 터 는 파일 에 저 장 됩 니 다.캐 시 된 파일 이름과 key 는 프 록 시 URL 의 MD5 코드 입 니 다.levels 매개 변수 지정 캐 시 하위 목록 기록 수
proxy_buffer_size
proxybuffer_size the_size
기본 값: proxybuffer_size 4k/8k
문맥: http, server, location
이 명령 은 버퍼 크기 를 설정 합 니 다. 프 록 시 백 엔 드 서버 에서 받 은 응답 내용 을 먼저 읽 고 여기에 놓 습 니 다.
작은 응답 header 는 보통 이 부분 응답 내용 에 있 습 니 다.
기본적으로 이 버퍼 크기 는 명령 과 같 습 니 다.
proxy_buffers
설 치 된 것;하지만 더 작 게 설정 할 수 있 습 니 다.proxy_buffers
proxybuffers the_number is_size;
기본 값: proxybuffers 8 4k/8k;
문맥: http, server, location
이 명령 은 버퍼 의 크기 와 수량 을 설정 합 니 다. 프 록 시 백 엔 드 서버 에서 받 은 응답 내용 을 여기에 배치 합 니 다. 기본 적 인 상황 에서 버퍼 의 크기 는 페이지 크기 와 같 습 니 다. 4K 일 수도 있 고 8K 일 수도 있 습 니 다. 이것 은 플랫폼 에 달 려 있 습 니 다.
2. 가상 서버 에 캐 시 사용
#
proxy_cache mycache;
proxy_cache_valid 100;
그리고 서버 에 접근 하면 data / cache 폴 더 에 파일 이 하나 더 있 는 것 을 발견 할 수 있 습 니 다. 파일 은 다음 과 같 습 니 다.캐 시 파일 내용 을 보면 파일 내용 에 페이지 정보 가 캐 시 되 어 있 습 니 다. 구체 적 으로 다음 과 같 습 니 다.
그러나 이 페이지 는 바로 내 가 방문 한 인터페이스 이다. 여기 서 나 는 나의 페이지 원본 코드 를 주지 않 는 다.
여기까지 Nginx 캐 시 페이지 정 보 를 사용 하면 됩 니 다.구체 적 인 명령 의 용법 은 나중에 업 데 이 트 됩 니 다.
질문 이 있 으 시 면 댓 글 을 환영 합 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.