jrgf 发表于 2018-12-27 06:52:37

centos编译安装squid3.4

  squid3.4编译安装
  squid反向代理工作原理:
squid 反向代理的工作原理的基础上,指出反向代理技术在提高网站访问速度,增强网站可用性、安全性方面有很好用途。作者在具体实验环境下,利用 DNS 轮询和 Squid 反向代理技术,实现了网站的负载均衡,从而提高了网站可用性和可靠性。
现在有许多大型的门户网站如 SINA 都采用 squid 反向代理技术来加速网站的访问速度,可将不同的 URL 请求分发到后台不同的 WEB 服务器上,同时互联网用户只能看到反向代理服务器的地址,加强了网站的访问安全。
  

  squid安装:
  系统为centos5.8
  安装依赖包:yum install -y gcc gcc-c++ make perl perl-devel
  解压文件:tar zxvf squid-3.4.2-20140112-r13074.tar
  安装: ./configure --prefix=/usr/local/squid
  make && make install

建立squid用户和组:groupadd squid   #建立用户
                   useradd -g squid -s /sbin/nologin squid#建立组并把用户添加到组 但不能登陆系统
  添加squid用户和组到指定文件夹权限:
         chown -R squid /usr/local/squid/var/logs/ /usr/local/squid/var/cache/   
             #squid需要用户有权访问var/logs和var/cache两个文件夹
  配置squid.conf:
            cache_effective_user squid   #使用squid用户启动squid

            cache_effective_group squid#使用squid组启动squid

      注:如使用root启动squid为--cache_effective_user nobody不能添加squid组、用户和文件夹权限
                                 cache_effective_group nobody

设定 squid 的主机名:
            visible_hostname 本机IP地址   #如无此项 squid 将无法启动

设定squid监听端口:
         http_port 80 accel vhost vport
         #这是客户访问网站的端口,最好设置为80,否则客户访问需要添加端口号;
         #vport指的是基于IP地址和基于端口的
         #vhost指的是所采用的虚拟主机的方式,必须要加.否则将无法将主机头转发至后端服务器,访问时就会出现无法找到主机头的错误
         #accel为加速模式

定义不同的父节点:
         cache_peer 种子机的ip地址 parent 800 no-query originserver name=种子机的名称
         #no-query originserver 参数指明是源服务器
         #parent表示源服务器端口
         #如需要轮询服务器同步数据,可添加round-robin
  指定缓存文件路径:
         cache_dir ufs /data/cache 33216 32 256
         cache_dir ufs /data/cache1 33216 32 256
  设置acl规则:
         acl all src 0.0.0.0/0.0.0.0
         http_access allow all
         # 允许所有用户访问

设置日志文件:
      logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %
页: [1]
查看完整版本: centos编译安装squid3.4