리눅스, 자료실, 성경검색, 추억의게임, 고전게임, 오락실게임, rootman, http://www.rootman.co.kr
* 18.232.146.10 *
| Home | Profile | Linux | 자료실 | zabbix | Mysql 5.6 | 갤러리 | 성경검색 | 해피니스 | 자유게시판 | 게시물검색 | L | O | R |    

기초강좌 squid proxy에서 특정 캐시 정보 삭제하기(PURGE)

페이지 정보

profile_image
작성자 rootman
댓글 0건 조회 11,445회 작성일 09-05-09 01:01

본문

최종 업데이트 : 2009/05/09

안녕하세요.
사이트 운영자입니다.

proxy에서는 PURGE를 지원하고 있습니다.
쉽게 풀어 쓰면.. 특정 캐시를 삭제할 수 있는 method를 지원하고 있습니다.

일반적으로,
- 정상적으로 삭제하면 HTTP STATUS CODE 200 OK를
- 실패했을 경우 HTTP status code 404를
- 서버에서 PURGE method가 지원되지 않을 경우 403을 반환합니다.


제가 사용하고 있는 squid의 예를 들어 간단하게 설명하겠습니다.

[squid.conf] 수정
#--------------------------------
# acl 정책
#--------------------------------
......
acl PURGE method PURGE
acl MethodType method GET POST PURGE
......


#--------------------------------
# TAG: http_access
#--------------------------------
........
http_access deny !MethodType // 3개의 method 외 차단
........
http_access allow PURGE localhost // PURGE를 localhost에서 허용
http_access deny purge // PURGE 그 외 네트워크 대역 차단
.........

[squid.conf] reload
[[email protected] ~]# /etc/init.d/squid reload 또는
[[email protected] ~]# squid -k reconfigure


[squid.conf] 삭제
[[email protected] ~]# telnet 127.0.0.1 80
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
PURGE http://www.rootman.co.kr/images/AAA.jpg HTTP/1.0

HTTP/1.0 404 Not Found
Server: squid/2.5.STABLE14
Mime-Version: 1.0
Date: Fri, 08 May 2009 14:51:37 GMT
Content-Length: 0

Connection closed by foreign host.

/* 설명 */
일반적으로 정상적으로 삭제되면 HTTP status code 200 OK 가 나타나고,
실패했을 경우 404(not found), purge method가 지원되지 않을 경우 403 status code가 나타납니다.

하지만, 저는 좀 특이하게 쓰는지라... 404가 나왔습니다...
log를 보면 정상적으로 삭제된 것을 확인할 수 있습니다.


[access.log] squid 로그
127.0.0.0 - - [09/May/2009:00:44:02 +0900] "PURGE http://www.rootman.co.kr/images/AAA.jpg HTTP/1.0" 404 129 TCP_MISS:NONE
// purge 처리를 하여 AAA.jpg가 삭제 처리되어 squid 처리 후 cache에 없다는 것을 확인(TCP_MISS)


119.194.111.0 - - [09/May/2009:00:44:10 +0900] "GET http://www.rootman.co.kr:1111/images/AAA.jpg HTTP/1.1" 200 34305 TCP_HIT:NONE
// cache에 파일이 없으므로, 웹서버에서 AA.jpg를 읽어들여 caching함(TCP_HIT)

119.194.111.0 - - [09/May/2009:00:44:14 +0900] "GET http://www.rootman.co.kr:1111/images/AAA.jpg HTTP/1.1" 304 246 TCP_IMS_HIT:NONE
// cache에 파일이 있고, 재요청 시 캐시에서 read (TCP_IMS_HIT,브라우저캐싱)

댓글목록

등록된 댓글이 없습니다.

Total 645건 1 페이지

검색