Squid3.0反向代理的安装与配置 - AspDIY.Net
来源:百度文库 编辑:神马文学网 时间:2024/04/25 07:04:37
./configure --prefix=/usr/local/squid
make
make install
chown -R nobody.nobody /usr/local/squid/var/
/usr/local/squid/sbin/squid -z
Squid3.0的配置也不复杂:
假设我们有两台Apache服务器需要反向代理:www.foo.com(IP: x.x.x.x);www.bar.com(IP: y.y.y.y)。
如果你的Apache和Squid再同一台服务器上,那么要注意端口问题,可以让Apache使用非80端口,而Squid使用80端口,也可以让Apache和Squid都使用80端口,只是Apache使用的是回环地址,而Squid使用的是外网地址,此时Apache的httpd.conf里设置的是Listen 127.0.0.1:80。
squid.conf文件一共有四千多行,不过大部分都是注释,配置反向代理功能大致涉及以下几项:
acl
在文件里找到TAG: acl的位置,在其后加上我们的设置:
acl sites dstdomain .foo.com
acl sites dstdomain .bar.com
http_access
在文件里找到TAG: http_access的位置,其后有一行注释:
# Insert YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
我们就把自定义的规则放在这行的下面:
http_access allow sites
http_access的位置是很重要的,在下面有如下设置:
# And finally deny all other access to this proxy
http_access deny all
它会拒绝所有剩下的访问。
http_port
在文件里找到TAG: http_port的位置,在其后加上我们的设置:
http_port 80 defaultsite=缺省站点 vhost
一般来说,vhost就足够了,不过加上defaultsite还是有好处的,毕竟,有的HTTP1.0客户端不发送Host头,在这种情况下系统有一个缺省值总比没有强。
cache_peer
在文件里找到TAG: cache_peer的位置,在其后加上我们的设置:
cache_peer x.x.x.x parent 80 0 no-query originserver name=foo
cache_peer y.y.y.y parent 80 0 no-query originserver name=bar
cache_peer_domain
在文件里找到TAG: cache_peer_domain的位置,在其后加上我们的设置:
cache_peer_domain foo www.foo.com
cache_peer_domain bar www.bar.com
cache_peer_access
在文件里找到TAG: cache_peer_access的位置,在其后加上我们的设置:
cache_peer_access foo allow sites
cache_peer_access bar allow sites
一切都搞定了之后,可以使用squidclient检测系统运行状态:
/usr/local/squid/sbin/squidclient -h HOST -p PORT mgr:info
还有很多其他的命令选项,可以通过mgr:menu查询,类似的命令也可以通过cache_object协议的方式发起。
有的时候我们可能还想手动删除一些缓存,这也可以使用squidclient命令来实现:
/usr/local/squid/sbin/squidclient -h HOST -p PORT -m PURGE URL
无非就是向URL发送一个PURGE请求,就好像是发送一GET请求一样,当然也可以使用PHP等语言来写脚本实现,很简单。
后续安装
设定完 /home/squid/etc/squid.conf 后,就要把 squid 启动,在启动前需要先下
$ /home/squid/sbin/squid -z
把 cache_dir 的目录结构建立,这是第一次才需要这麽做,或是有更动过 cache_dir 的设定。
注意:要注意一下 cache 的权限
再来就是要把 squid 执行,可以先下以下命令,来确定启动状况
$ /home/squid/sbin/squid -NCd1
(查看squid的叁数: $ /home/squid/sbin/squid -help)
可以按 ^C 停止,若过程讯息没有产生错误,就可以执行
$ /home/squid/bin/RunCache &
注意:RunCache 档案里的 squid 路径请修改成为 /home/squid/sbin/squid
5.3 初始化cache目录
在初次运行squid之前,或者无论何时你增加了新的cache_dir,你必须初始化cache目录。命令很简单:
%squid -z
make
make install
chown -R nobody.nobody /usr/local/squid/var/
/usr/local/squid/sbin/squid -z
Squid3.0的配置也不复杂:
假设我们有两台Apache服务器需要反向代理:www.foo.com(IP: x.x.x.x);www.bar.com(IP: y.y.y.y)。
如果你的Apache和Squid再同一台服务器上,那么要注意端口问题,可以让Apache使用非80端口,而Squid使用80端口,也可以让Apache和Squid都使用80端口,只是Apache使用的是回环地址,而Squid使用的是外网地址,此时Apache的httpd.conf里设置的是Listen 127.0.0.1:80。
squid.conf文件一共有四千多行,不过大部分都是注释,配置反向代理功能大致涉及以下几项:
acl
在文件里找到TAG: acl的位置,在其后加上我们的设置:
acl sites dstdomain .foo.com
acl sites dstdomain .bar.com
http_access
在文件里找到TAG: http_access的位置,其后有一行注释:
# Insert YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
我们就把自定义的规则放在这行的下面:
http_access allow sites
http_access的位置是很重要的,在下面有如下设置:
# And finally deny all other access to this proxy
http_access deny all
它会拒绝所有剩下的访问。
http_port
在文件里找到TAG: http_port的位置,在其后加上我们的设置:
http_port 80 defaultsite=缺省站点 vhost
一般来说,vhost就足够了,不过加上defaultsite还是有好处的,毕竟,有的HTTP1.0客户端不发送Host头,在这种情况下系统有一个缺省值总比没有强。
cache_peer
在文件里找到TAG: cache_peer的位置,在其后加上我们的设置:
cache_peer x.x.x.x parent 80 0 no-query originserver name=foo
cache_peer y.y.y.y parent 80 0 no-query originserver name=bar
cache_peer_domain
在文件里找到TAG: cache_peer_domain的位置,在其后加上我们的设置:
cache_peer_domain foo www.foo.com
cache_peer_domain bar www.bar.com
cache_peer_access
在文件里找到TAG: cache_peer_access的位置,在其后加上我们的设置:
cache_peer_access foo allow sites
cache_peer_access bar allow sites
一切都搞定了之后,可以使用squidclient检测系统运行状态:
/usr/local/squid/sbin/squidclient -h HOST -p PORT mgr:info
还有很多其他的命令选项,可以通过mgr:menu查询,类似的命令也可以通过cache_object协议的方式发起。
有的时候我们可能还想手动删除一些缓存,这也可以使用squidclient命令来实现:
/usr/local/squid/sbin/squidclient -h HOST -p PORT -m PURGE URL
无非就是向URL发送一个PURGE请求,就好像是发送一GET请求一样,当然也可以使用PHP等语言来写脚本实现,很简单。
后续安装
设定完 /home/squid/etc/squid.conf 后,就要把 squid 启动,在启动前需要先下
$ /home/squid/sbin/squid -z
把 cache_dir 的目录结构建立,这是第一次才需要这麽做,或是有更动过 cache_dir 的设定。
注意:要注意一下 cache 的权限
再来就是要把 squid 执行,可以先下以下命令,来确定启动状况
$ /home/squid/sbin/squid -NCd1
(查看squid的叁数: $ /home/squid/sbin/squid -help)
可以按 ^C 停止,若过程讯息没有产生错误,就可以执行
$ /home/squid/bin/RunCache &
注意:RunCache 档案里的 squid 路径请修改成为 /home/squid/sbin/squid
5.3 初始化cache目录
在初次运行squid之前,或者无论何时你增加了新的cache_dir,你必须初始化cache目录。命令很简单:
%squid -z
Squid3.0反向代理的安装与配置 - AspDIY.Net
Squid3.0反向代理的安装与配置
Squid3.0配置参考 - AspDIY.Net
服务器迁移---squid3.0做反向代理
服务器迁移---squid3.0做反向代理
服务器迁移---squid3.0做反向代理cc
转载:Squid3.0与2.7的配置差异
Squid3.0配置参考
Squid 3.0 反向代理安装笔记(Linux)
CVSNT的安装与配置
CVSNT的安装与配置
openldap的安装与配置
squid反向代理作web加速-配置详解1-基本概念
squid反向代理作web加速-refresh_pattern 配置
squid反向代理作web加速-refresh_pattern 配置
windows 2003安装IIS和.net环境的配置方法
squid反向代理作web加速-配置详解5-具体配置6
Eclipse插件的安装与配置
以太网卡的安装与配置
MySQL 安装与配置
XenServer安装与配置
squid反向代理作web加速-配置详解2-性能要素
squid反向代理作web加速-配置详解5-访问控制 acl指令
squid反向代理作web加速-配置详解5-Disk Cache设置