Squid常用命令
1.初始化在squid.conf里配置的cache目录
squid -z
2.对squid.conf排错,即验证squid.conf的语法和配置
squid -k parse
3.定期清理swap.state内无效数据
squid -k rotate -f /etc/squid/squid.conf
当squid应用运行了一段时间之后,cache_dir对应的swap.state文件就会变得越来越大,里面的无效接口数据越来越多,这可能影响squid的响应时间,因此需要使用squid清理swap.state里面的无效数据,减少swap.state的大小。
查看Squid日志文档
1. more /var/log/squid/access.log | grep TCP_MEM_HIT
该指令可以看到在squid运行过程中,有那些文件被squid缓存到内存中,并返回给访问用户。
2.more /var/log/squid/access.log | grep TCP_HIT
该指令可以看到在squid运行过程中,有那些文件被squid缓存到cache目录中,并返回给访问用户。
3.more /var/log/squid/access.log | grep TCP_MISS
该指令可以看到在squid运行过程中,有那些文件没有被squid缓存,而是从原始服务器获取并返回给访问用户。
Squid命中率分析
1.取得squid内存使用情况:
squidclient -p 3128 mgr:mem
2.取得squid运行状态信息:
squidclient -p 3128 mgr:info
3.取得squid已经缓存的列表:
squidclient -p 3128 mgr:bjects. use it carefully,it may crash
4.取得squid的磁盘使用情况:
squidclient -p 3128 mgr:diskd
5.强制更新某个url:
squidclient -p 3128 -m PURGE http://www.xxx.com/xxx.php
6.查命中率:
squidclient -h IP(具体侦听IP) -p 80(具体侦听端口) mgr:info
Squid常用配置选项
/etc/squid/squid.conf
http_port 3128 (还可以只监听一个IP http_port 192.168.0.1:3128)
cache_mem 64MB #缓存占内存大小
maximum_object_size 4096KB #最大缓存块
reply_body_max_size 1024000 allow all #限定下载文件大小
access_log /var/log/squid/access.log #访问日志存放的地方
visible_hostname proxy.test.xom #可见的主机名
cache_dir ufs /var/spool/squid 100 16 256
#ufs:缓存数据的存储格式
#/var/spool/squid 缓存目录
#100:缓存目录占磁盘空间大小(M)
#16:缓存空间一级子目录个数
#256:缓存空间二级子目录个数
cache_mgr webmaster@test.com #定义管理员邮箱
http_access deny all #访问控制
squid中的访问控制
使用访问控制特性,可以控制在访问时根据特定的时间间隔进行缓存、访问特定站点或一组站点等等。
squid访问控制有两个要素:ACL元素和访问列表。访问列表可以允许或拒绝某些用户对此服务的访问。
ACL元素类型
  • src:源地址(即客户机IP地址)
  • dst:目标地址(即服务器IP地址)
  • srcdomain:源名称(即客户机名称)
  • dstdomain:目标名称(即服务器名称)
  • time:一天中的时刻和一周内的一天
  • url_regex:URL规则表达式匹配
  • urlpath_regex:URL-path规则表达式匹配,略去协议和主机名
  • proxy_auth:通过外部程序进行用户验证
  • maxconn:单一IP的最大连接数
ACL格式
acl acl_element_name type_of_acl_element values_to_acl
注:
  1. acl_element_name 可以是任一个在ACL中定义的名称
  2. 任何两个ACL元素不能用相同的名字
  3. 每个ACL由列表值组成。当进行匹配检测的时候,多个值由逻辑或运算连接;换言之,即任一ACL元素的值被匹配,则这个ACL元素即被匹配。
  4. 并不是所有ACL元素都能使用访问列表中的全部类型
  5. 不同的ACL元素写在不同行中,squid将把他们组合在一个列表中
访问条目
我们可以使用许多不同的访问条目。下面是我们常用的几个:
  • http_access:允许HTTP访问
  • no_cache:定义对缓存请求的响应。
访问列表的规则由一些类似'allow'或‘deny’的关键字构成,用以允许或拒绝向特定或一组ACL元素提供服务。
  1. 一个访问列表可以由多条规则组成
  2. 如果没有任何规则与访问请求匹配,默认动作将与列表中最后一条规则对应。
  3. 一个访问条目中所有元素将用逻辑与运算连接
  4. http_access Action 声明1 AND 声明2 AND 声明 OR.
  5. http_access Action 声明3
  6. 多个http_accesss声明间用或运算连接,但每个访问条目的元素间用与运算连接。
  7. 列表中的规则总是遵循由上而下的顺序
  8. 这些规则按照他们的排列顺序进行匹配检测,一旦检测到匹配的规则,匹配就立即结束。

squid之------常用配置及选项的更多相关文章

  1. saltstack(二) master、minion常用配置选项

    master常用配置选项: interface: 指定bind的地址(默认0.) publish_port:指定发布端口(默认4505) ret_port: 指定结果返回端口,与minion配置文件的 ...

  2. squid安装、配置、控制

    Squid 目录 [隐藏]  1 前言 2 安装 2.1 从源中安装 2.2 源码编译安装 3 基本配置 4 高级控制 5 认证 6 总结 6.1 服务器配置 6.2 用户分类 6.3 行为分类 6. ...

  3. logback 常用配置详解<appender>

    logback 常用配置详解 <appender> <appender>: <appender>是<configuration>的子节点,是负责写日志的 ...

  4. squid 2.7 配置与安装

    1.准备安装包 2.准备编译环境 yum -y install gcc 3.编译安装squid ./configure \--prefix=/data/squid \--disable-interna ...

  5. logback 常用配置详解(二) <appender>

    logback 常用配置详解(二) <appender> <appender>: <appender>是<configuration>的子节点,是负责写 ...

  6. JVM 常用配置

    JVM的配置,最常用的两个配置就是:-Xms512m –Xmx1024m -Xms设置JVM的初始化内存大小,-Xmx为最大内存大小,当突破这个值,将会报内存溢出,导致的原因有很多,主要是虚拟机的回收 ...

  7. VMware中安装CentOS7网络配置静态IP地址,常用配置和工具安装

    VMware中安装CentOS7网络配置静态IP地址,常用配置和工具安装在阿里云开源镜像地址下载镜像Index of /centos/7.2.1511/isos/x86_64/http://mirro ...

  8. zend studio一些常用配置

    zend studio 常用 配置 1.zend中添加注释是ctrl+slash,这个slash在哪里?如何来取消注释 slash是斜杠'/'那个键,就是在,.之后的那个. 进行注释是 ctrl+'/ ...

  9. logback常用配置详解及logback简介

    logback 简介(一) Ceki Gülcü在Java日志领域世界知名.他创造了Log4J ,这个最早的Java日志框架即便在JRE内置日志功能的竞争下仍然非常流行.随后他又着手实现SLF4J 这 ...

随机推荐

  1. 通过jenkins-Python在后台操作Jenkins构建job

    最近要开发1个接口,接收到1个指令后自动触发自动化测试,虽然也可以通过shell命令做这一步,但因为目前所有构建自动化的的动作都通过jenkins完成,所以想要尝试能不能用python去控制jenki ...

  2. [flask]jinjia2处理表单-实现搜索界面

    思路: 通过flask-wtf创建forms表单类 在app.py中创建search_name()视图函数,实例化form表单类,将通过render_template将form传给html模板 创建h ...

  3. mybatis的xml文件中的CDATA的使用

    mybatis的xml文件中的CDATA的使用 <!--查询列表--> <select id="queryListPage" parameterType=&quo ...

  4. Linux 串口调试工具汇总

    minicomminicom 是一款启动速度快,功能强大的串口终端调试工具,当然缺点就是纯字符界面,没有图形界面的调试工具看起来直观方便,但是它功能十分强大,并且在一些没有屏幕的嵌入式主板上运行颇有用 ...

  5. golang基础学习-MongoDB使用

    1.系统环境 Golang:go version go1.10.3 darwin/amd64 OS:MacOS MongoDB: version: 3.4.4 2.Golang使用MongoDB 使用 ...

  6. Day05:循环问题 / 数组

    循环嵌套 循环结构中包含完整的循环结构. 注意: 循环嵌套不限层次 各种循环语句都可以互相嵌套 内层循环中出现的break和continue只作用在内层循环中 外层循环循环一次 内层循环循环一遍 Ja ...

  7. Redis 下载与配置window服务

    1.Redis下载 Git下载地址:https://github.com/MicrosoftArchive/redis/releases 2.配置Window服务 步骤一:在 Redis目录 输入 c ...

  8. 实验吧-PHP大法-eregi()函数

    题目地址:http://www.shiyanbar.com/ctf/54 题目: <?php if(eregi("hackerDJ",$_GET[id])) { echo(& ...

  9. USACO1.6 回文质数 Prime Palindromes

    题目传送门 题目的提示已经非常明显了,可以先生成回文数再判断质数,因为生成回文数的复杂度较小.判断质数用了之前学到的那种做法. 其实可以用一些比较优秀的筛质数的方法,再判断回文数. /* ID: St ...

  10. 父进程pid和子进程pid的大小关系

    如果进程ID最大值没有达到系统进程数的上限,子进程比父进程ID大.但是如果进程ID达到上限,系统会分配之前分配但是已经退出的进程ID给新进程,这样有可能出现子进程ID比父进程小.