테스트 사이트 - 개발 중인 베타 버전입니다

Nginx proxy cache를 이용하니 이미지 캐시서버 구축이 훨씬 쉬워지네요.

https://www.wsgvet.com/web/243

 

여기에 정리해뒀습니다.

 

---

 

php도 필요없고 그냥 서버에 Nginx 딱 1개만 설치하면 됩니다. (SSL 인증서 발급은 먼저 하시구요)

 

그리고 설정파일에

 

[code]

proxy_cache_path /var/cache levels=1:2 keys_zone=static:100m max_size=10g inactive=30d;
proxy_cache_key "$scheme$request_method$host$request_uri";

server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
        server_name cdn.example.com; # 이미지 캐시서버 도메인
        server_tokens off;

        location ~* \.(?:css|js|gif|png|jpg|jpeg|mp4|webm)$ {
                valid_referers none blocked *.example.com example.com; # 본서버 외 불펌금지
                if ($invalid_referer) {
                    return   403;
                }
                proxy_pass https://example.com; # 본서버 도메인
                proxy_cache_valid 200 301 302 600m;
                proxy_cache static;
                proxy_cache_use_stale  error timeout updating http_500 http_502 http_503 http_504;
                proxy_cache_revalidate on;
                proxy_cache_lock       on;
                proxy_ignore_headers Set-Cookie;
                access_log off;
                add_header My-Cache-Status $upstream_cache_status;
                add_header my-ray  "KR";
                sendfile on;
                tcp_nopush on;
                tcp_nodelay on;
                keepalive_timeout 65;
                }

        location / { 
                return   403;
        }

        ssl_certificate ssl/fullchain.pem; #자신의 인증서 경로로..
        ssl_certificate_key ssl/privkey.pem; #자신의 인증서 경로로..
        ssl_trusted_certificate ssl/chain.pem; #자신의 인증서 경로로..

        ssl_stapling on;
        ssl_stapling_verify on;
        resolver 8.8.8.8 8.8.4.4 valid=300s;
        resolver_timeout 10s;
}

[/code]

 

위와 같이 셋팅하고 Nginx를 재시작해줍니다.

 

마지막으로 본서버에 가서 캐시하고 싶은 파일들의 경로를 캐시서버 도메인으로 바꿉니다.

 

그러면 알아서 캐시됩니다.

 

정말 쉽죠?

 

 

도커로 SSL 인증서 자동화까지 합쳐서 스크립트로 만들어봐야겠네요.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 8개

와~~~
@선구자 와 좋아요!
갈수록 진화를 하시네요 ㄷㄷㄷㄷㄷ
@뒷집돌쇠 이게 한계인거 같습니다 ㅎㅎㅎ
xetown 언제 저렇게 바뀌었지? ^^;
@BlueAngel 조금 된 것 같습니다. ㅎㅎ
이렇게 하면 캐쉬서버에 이미지가 자동생성도 되는건가요??
@ifelse 네. 프록시 패스로 지나가는데, 한번 지나가면 자동으로 캐시가 생깁니다.

게시글 목록

번호 제목
1717076
1717072
1717065
1717062
1717050
1717042
1717041
1717036
1717025
1717024
1717016
1717014
1717006
1717004
1716995
1716986
1716982
1716978
1716974
1716968
1716966
1716952
1716945
1716934
1716926
1716920
1716915
1716914
1716912
1716906