centos下squid反向代理
A服务器反向代理B(web服务器)
首先,我们一起来看看如何使用一台服务器或者VPS反向代理另一台服务器或者另一个服务器上的域名。我们假设用于squid的服务器为A,而真实后端web服务器为B。
首先,在A服务器编译squid,以root账户ssh登陆A,运行下列命令(本文基于CentOS 5.* 32bit)
yum install squid
编译过程很快,如果有安装httpd,可以移除之。
yum remove httpd
接下来是最重要的部分,编辑squid.conf文件(文件位置/etc/squid/),squid.conf配置项目较多,网络上关于常规的设定教程也很多,本文我们主要是记录能使用它反代另一台服务器或者域名,所以,我们仅列出需要修改的前后端地址及域名部分。修改过的squid.conf 点击下载squid.conf
cache_peer *.*.*.* parent 80 7 no-query originserver name=www1 cache_peer_domain www1 oiplay.com www.oiplay.com
上面的...换成您的web服务器IP,如果有多个域名,可以自行添加www2,www3……如果反代web服务器上的所有域名,可以删除cache_peer_domain行。
完成后上传,并重载下squid。
service squid reload
设定开机启动squid
chkconfig --level 2345 squid on chkconfig squid on
这样操作后,您可以将B服务器上的域名,解析指向A服务器IP,由A服务器反代最终地址。这种方式简单易行,比如欧洲的服务器便宜,但国内访问速度欠佳,可以给他来个港台日韩的squid前端,缓存后的速度提升还是比较明显的;但缺点是直接用了80端口反代,这台squid服务器再做web服务器就比较麻烦了。