國外的客戶一直反應說訪問公司的網站有時快有時慢。如果慢時,是幾乎都不能動的狀況。
於是我打算在 AWS 上租用一台主機,並使用 Squid 搭建 reverse proxy server 來解決此問題。
我們公司有三個網站 www3.john.com www7.john.com www8.john.com,
要設定成只要一台 proxy server 就可以完成多台 web server 的代理。
其架構如下圖
設定步驟:
1. 安裝 Squid (太簡單了,略)
2. 設定 squid.conf
http_port 80 accel vhost vport
icp_port 0
cache_mem 1024 MB
cache_swap_high 95
cache_swap_low 90
#如果是 domain 是 www3 (別名) 的話,則連到 114.108.236.111 web server 去
cache_peer 114.108.236.111 parent 80 0 no-query originserver name=www3
#如果是 domain 是 www7 (別名) 的話,則連到 115.109.237.114 web server 去
cache_peer 115.109.237.114 parent 80 0 no-query originserver name=www7
#如果是 domain 是 www8 (別名) 的話,則連到 116.110.238.110 web server 去
cache_peer 116.110.238.110 parent 80 0 no-query originserver name=www8
# 設定 www3-sg.john.com 的別名為 www3
cache_peer_domain www3 www3-sg.john.com
# 設定 www7-sg.john.com 的別名為 www7
cache_peer_domain www7 www7-sg.john.com
# 設定 www8-sg.john.com 的別名為 www8
cache_peer_domain www8 www8-sg.john.com
3. 設定 DNS
在 DNS 上建立三個 A record ,都指向 reverse proxy server 的 IP
www3-sg.john.com 1.1.1.1
www7-sg.john.com 1.1.1.1
www8-sg.john.com 1.1.1.1