squid作用
1正向代理
标准的代理缓冲服务器,须在每一个内部主机的浏览器上明确指明代理服务器的IP地址和端口号。
透明代理缓冲服务器,代理操作对客户端的浏览器是透明的(即不需指明代理服务器的IP和端口)Iptables或者Ipchains实现
 
2.Squid对架构进行优化,缓存网站,提升web应用访问性能
 
原理
当squid第一次接受到对特殊资源的请求时,squid经常从原始服务器确认它。假如服务器指示squid的拷贝仍然有效,数据就发送出去。否则,squid升级它的缓存拷贝,并且转发给客户。squid会清除缓存以释放空间给新对象。
 
工作流程
当代理服务器中有客户端需要的数据时:
a. 客户端向代理服务器发送数据请求;
b. 代理服务器检查自己的数据缓存;
c. 代理服务器在缓存中找到了用户想要的数据,取出数据;
d. 代理服务器将从缓存中取得的数据返回给客户端。
当代理服务器中没有客户端需要的数据时:
1. 客户端向代理服务器发送数据请求;
2. 代理服务器检查自己的数据缓存;
3. 代理服务器在缓存中没有找到用户想要的数据;
4. 代理服务器向Internet 上的远端服务器发送数据请求;
5. 远端服务器响应,返回相应的数据;
6. 代理服务器取得远端服务器的数据,返回给客户端,并保留一份到自己的数据缓存中
 
2.硬件对性能影响
内存和磁盘空间对性能有影响,内存短缺会严重影响性能。更多的磁盘空间意味着更多的缓存目标和更高的命中率。SCSI磁盘比ATA的执行性能好。基本规则是,每G磁盘空间需要32M内存。这样,512M内存的系统,能支持16G的磁盘缓存
Web缓存典型的cache命中率在30%到60%之间
 
squid安装
操作系统:centos6.5
squid版本:squid-3.1.23-24.el6.x86_64.rpm
3.1检查当前是否安装
rpm -qa squid
3.2 yum方式安装
yum -y install squid
 
4.配置
4.1安装后目录结构
主程序:
/usr/sbin/squid
脚本:
/etc/init.d/squid
配置文件
/etc/squid/squid.conf
默认访问日志文件:
/var/log/squid/access.log
 
4.2squid.conf文件配置
vi /etc/squid/squid.conf做如下配置
 
http_port 192.168.252.11:3164 #监听端口(为了安全起见,在前面加上IP地址,Squid就不会监听外部的网络接口)
cache_dir ufs /var/spool/squid 100 16 256 //定义squid的cache存放路径 cache目录容量100M 一级缓存目录16个,二级缓存目录256个
--一定要在配置文件最下方增加下面这条语句,否则squid无法启动!
visible_hostname localhost
--配置部分ip地址可访问
acl normal src 192.168.101.1-192.168.101.250/32
http_access allow normal
 
#cache access_log /var/log/squid/access.log 设置访问日志文件
#cache store_log /var/log/squid/store.log 设置网页缓存日志文件
#cache effective user/group squid
 
5.启动
--创建cache目录
cd /usr/sbin/squid
./squid -z
2017/06/30 15:13:54| Creating Swap Directories
2017/06/30 15:13:54| /var/spool/squid exists
2017/06/30 15:13:54| Making directories in /var/spool/squid/00
2017/06/30 15:13:54| Making directories in /var/spool/squid/01
2017/06/30 15:13:54| Making directories in /var/spool/squid/02
2017/06/30 15:13:54| Making directories in /var/spool/squid/03
2017/06/30 15:13:54| Making directories in /var/spool/squid/04
2017/06/30 15:13:54| Making directories in /var/spool/squid/05
2017/06/30 15:13:54| Making directories in /var/spool/squid/06
2017/06/30 15:13:54| Making directories in /var/spool/squid/07
2017/06/30 15:13:54| Making directories in /var/spool/squid/08
2017/06/30 15:13:54| Making directories in /var/spool/squid/09
2017/06/30 15:13:54| Making directories in /var/spool/squid/0A
2017/06/30 15:13:54| Making directories in /var/spool/squid/0B
2017/06/30 15:13:54| Making directories in /var/spool/squid/0C
2017/06/30 15:13:54| Making directories in /var/spool/squid/0D
2017/06/30 15:13:54| Making directories in /var/spool/squid/0E
2017/06/30 15:13:54| Making directories in /var/spool/squid/0F
 
iptables对应配置
如果是正常代理需要配置iptables的NAT表,对80端口的访问转发到squid端口
iptables -t nat -A PREROUTING -s 指定ip段 -p tcp --dport 80 -j REDIRECT --to-port 3164
 
如果是非透明代理需要开发squid的端口
iptables -A INPUT -s 指定ip段 -p tcp --dport 3164 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 3164 -j ACCEP
 
 
 
 
 
 
 
 

centos6.5 squid安装的更多相关文章

  1. 最新版CentOS6.5上安装部署ASP.NET MVC4和WebApi

    最新版CentOS6.5上安装部署ASP.NET MVC4和WebApi 使用Jexus5.8.1独立版 http://www.linuxdot.net/ ps:该“独立版”支持64位的CentOS ...

  2. CentOS6.3编译安装Memcached

    要用到如下源码包: /usr/local/src/memcached/libevent-2.0.21-stable.tar.gz /usr/local/src/memcached/memcached- ...

  3. CentOS6.3编译安装Memcached的PHP客户端memcache

    在安装Memcached的PHP客户端memcache之前,可先看下先前的工作笔记: PHP5不重新编译,如何安装自带的未安装过的扩展,如soap扩展? 安装PHP的memcache扩展 cd /us ...

  4. CentOS6.3编译安装Nginx1.4.7 + MySQL5.5.25a + PHP5.3.28

    [准备工作] #在编译安装lnmp之前,首先先卸载已存在的rpm包. rpm -e httpd rpm -e mysql rpm -e php yum -y remove httpd yum -y r ...

  5. 【PHP升级】CentOS6.3编译安装 PHP5.4.38

    先前安装的PHP5.3.28(参考:CentOS6.3编译安装Nginx1.4.7 + MySQL5.5.25a + PHP5.3.28),现在准备升级PHP到5.4.38,有如下几个地方需要重新编译 ...

  6. CentOS6.3 编译安装LAMP(1):准备工作

    卸载yum或rpm安装的amp软件 #在编译安装lamp之前,首先先卸载已存在的rpm包. rpm -e httpd rpm -e mysql rpm -e php yum -y remove htt ...

  7. CentOS6.3 编译安装LAMP(2):编译安装 Apache2.2.25

    所需源码包: /usr/local/src/Apache-2.2.25/httpd-2.2.25.tar.gz 编译安装 Apache2.2.25 #切换到源码目录 cd /usr/local/src ...

  8. CentOS6.3 编译安装LAMP(2):编译安装 Apache2.4.6

    Apache官方说: 与Apache 2.2.x相比,Apache 2.4.x提供了很多性能方面的提升,包括支持更大流量.更好地支持云计算.利用更少的内存处理更多的并发等.除此之外,还包括性能提升.内 ...

  9. CentOS6.3 编译安装LAMP(3):编译安装 MySQL5.5.25

    所需源码包: /usr/local/src/MySQL-5.5.25/cmake-2.8.8.tar.gz /usr/local/src/MySQL-5.5.25/mysql-5.5.25.tar.g ...

随机推荐

  1. Linux 无线网卡配置

    无线网卡常见的配置选项 某TL-WR842N路由器无线配置选项含义: 无线名称 路由器的无线(Wi-Fi)名称.无线密码 无线加密使用WPA2-PSK/WPA-PSK加密方式.AES加密算法,无线密码 ...

  2. 洗礼灵魂,修炼python(69)--爬虫篇—番外篇之feedparser模块

    feedparser模块 1.简介 feedparser是一个Python的Feed解析库,可以处理RSS ,CDF,Atom .使用它我们可从任何 RSS 或 Atom 订阅源得到标题.链接和文章的 ...

  3. asp.net Web项目中使用Log4Net进行错误日志记录

      使用log4net可以很方便地为应用添加日志功能.应用Log4net,开发者可以很精确地控制日志信息的输出,减少了多余信息,提高了日志记录性能.同时,通过外部配置文件,用户可以不用重新编译程序就能 ...

  4. mysql建表基本语法

    mysql添加约束的两种条件: ------表的内部添加(约束) 列名1 数据类型 (int) primary key auto_increment,---主键默认不能为空的 列名2 数据类型 not ...

  5. IE6浏览器无法打开QQ邮箱

    原因:未启用TLS1.0 解决方法: 打开IE浏览器,依次打开 [Internet]→[高级],在 设置 选项卡中,勾选[使用TLS1.0],然后点击[确定]保存修改,重启浏览器即可.

  6. 【Teradata 】TD最大列数

    1.一个表最大列数限制是多少? DB2,表最大列数1012,视图最大列数5000:一行最大长度32677Byte Teradata 表最大列数和视图最大列数2048,:16版本前,一行最大长度为64k ...

  7. 高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南

    原文:http://my.oschina.net/wstone/blog/365010#OSC_h3_13 (WJW)高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南 [X] ...

  8. Django-rest-framework 接口实现 版本控制 versioning

    版本控制 rest_framework 提供了 5 种版本控制 以及对应的 写法 url的 更改都可以 在 from rest_framework import versioning 中查看 Acce ...

  9. python 列表 元祖

    # # 1,写代码,有如下列列表,按照要求实现每⼀一个功能li = ["alex", "WuSir", "ritian", "ba ...

  10. python获取数据网页数据并创建文件夹保存(基于python3.6)

    from urllib.parse import urljoin import urllib.request from bs4 import BeautifulSoup import os impor ...