스마트캐싱 (squid 2.6) 설정 - 80포트 멀티도메인
아래 squid.conf 는 squid 2.6 버전에서 사용하던 파일 내용입니다.
하나의 IP에 여러 도메인을 사용할 경우
이 모든 도메인이 squid 적용을 받게 하려면 아래 룰을 참고하시기 바랍니다.
목적은 'squid를 80포트로 사용하기' 입니다.
단순히 squid 설정으로만 되지않아 iptables 와 같이 사용하였습니다.
(멀티도메인 사용을 하려는데 squid 8080포트는 되지만 squid 80포트로는 멀티도메인 사용이 잘 되지 않아 몇 일 고생했습니다.
혹시 squid 설정만으로 80포트 사용할 수 있으신분은 알려주시면 감사하겠습니다. ^^)
squid.conf 내용
hierarchy_stoplist cgi-bin ? cache_swap_low 90 cache_replacement_policy lru memory_replacement_policy lru emulate_httpd_log on negative_ttl 60 seconds acl BLOCK_URI urlpath_regex -i ../ ... .. .ida .IDA .cnf .dll passwd boot .exe cmd default.ida XXXXXX /bin/sh wget acl all src 0.0.0.0/0.0.0.0 log_uses_indirect_client off reply_header_max_size 20 KB httpd_suppress_version_string on
# --------- Important -------------- # visible_hostname sysdocu.com // squid 적용할 도메인을 입력해줍니다. 추가 가능 visible_hostname img.sysdocu.com maximum_object_size 15 MB access_log /home/squid/logs/access.log squid logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st "%{Referer}>h" "%{User-Agent}>h" %Ss:%Sh pid_filename /var/run/squid.pid cache_mem 2 GB http_port 8080 accel defaultsite=sysdocu.com:80 vhost // squid 적용할 도메인을 입력해줍니다. 추가가능 refresh_pattern -i .jpg$ 0 100% 86400 reload-into-ims
logfile_rotate 1 |
현재 squid.conf 로는 웹포트 80, squid 포트 8080으로 설정하였습니다.
하지만 소스에서 이미지 경로를 sysdocu.com:8080/rabbit.jpg 등으로 수정하여 사용하지 않으려면
아래와 같이 iptables 로 룰을 추가해 주도록합니다.
iptables 룰 추가
# iptables -t nat -A PREROUTING -p tcp -s 0.0.0.0/0 -d 192.168.10.2 --dport 80 -j DNAT --to 192.168.10.2:8080
80포트로 접속시 squid 포트인 8080 으로 연결시키라는 뜻입니다.
부팅할때 자동으로 iptables 룰이 올라오도록 /etc/rc.d/rc.local 에 추가를 해줍니다.
[참고]
80 포트 접속 > 8080 포워딩 > 80 이미지 로딩 시도 > 8080 접속시도 > .... 와 같이 loop 되지 않나.. 하는 걱정은 안하셔도 됩니다.
웹브라우져를 통해 처음 서버의 iptables에 접근하면
iptables 가 80포트로 접속한 요청은 8080으로 포워딩 시켜주며 역할을 다하게 됩니다.
squid 8080 포트에서는 로컬 서버의 80포트(이때는 iptables 를 거치지 않습니다.)의 이미지를 가져오게 됩니다.
'리눅스 > APACHE' 카테고리의 다른 글
에러 로그 "x16x03x01" 200 1960 (0) | 2015.01.16 |
---|---|
ssl key 파일 암호 없애는 방법 (0) | 2015.01.16 |
소스 설치한 아파치를 부팅시 자동 구동되게 하기 (0) | 2015.01.16 |
웹페이지 파일 자체 언어셋 설정 (0) | 2015.01.16 |
JDK, JDBC, JRE 설치하기 (0) | 2015.01.16 |