squid 3 反向代理 缓存服务器 安装配置精华指南 by lbj
squid-3.0.STABLE21 安装配置 by lbj
作用:作为反向代理/缓存服务器
系统:redhat linux 企业版 5.4
- linux 要有gcc编译器,使用squid-3.0.STABLE21版本
- 查询指令
ulimit -n
vi /proc/sys/fs/file-max
vi /proc/sys/net/ipv4/ip_local_port_range - 配置指令
ulimit -HSn 65536
echo 8192 > /proc/sys/fs/file-max
echo "1024 40000" > /proc/sys/net/ipv4/ip_local_port_range - 需要将ulimit -HSn 65536设置在/etc/rc.d/rc.local中,防止重启后失效, 花费时间来增加这个限制值的大小。否则,squid在高负载时执行性能将很低。
- 将语言包的zh-cn所有ERR文件拷贝到 ../squid-3.0.STABLE21/errors/Simplify_Chinese
- 编译指令
# ./configure --prefix=/usr/local/squid3 --disable-internal-dns --enable-err-languages="Simplify_Chinese" --enable-default-err-languages="Simplify_Chinese" - 安装
[root@localhost squid-3.0.STABLE21]# make
[root@localhost squid-3.0.STABLE21]# make install - 改变目录权限
chmod -R 777 /usr/local/squid3/var/ - 创建cache空间
Creating Swap Directories,Making directories in /usr/local/squid3/var/cache/00
/usr/local/squid3/sbin/squid -z - 检查squid.conf的配置
./squid - k parse - 启动squid
./squid -N -d1 - 将squid以后台进程运行
./squid -s - 发送关闭squid进程的信号
./squid -k shutdown - -k function
指示squid执行不同的管理功能。
reconfigure, rotate, shutdown, interrupt, kill, debug, check, or parse. reconfigure导致运行中的squid重新读取配置文件。
rotate导致squid滚动它的日志,这包括了关闭日志,重命名,和再次打开它们。
shutdown发送关闭squid进程的信号。
interrupt立刻关闭squid,不必等待活动会话完成。
kill发送KILL信号给squid,这是关闭squid的最后保证。
debug将squid设置成完全的调试模式
check简单的检查运行中的squid进程,返回的值显示squid是否在运行。
parse简单的解析squid.conf文件,如果配置文件包含错误,进程返回非零值。 - 强制关闭squid进程
ps -A | grep squid
kill -9 id - 配置要点
acl QUERY urlpath_regex -i cgi-bin /? /.jsp /.asp /.php /.cgi /.aspx
cache deny QUERY
默认区分大小写,-i参数表示不区分大小写#logfile_rotate 8
0-8 共9个log
通过squid -k rotate命令轮转日志strip_query_terms off
解决http://www.jackbillow.com/xxx.php?codetin=pig
?后边丢失问题 - 我的配置文件squid.conf
配置文件中使用外部dns,因此./configure时要带--disable-internal-dns 参数
同时因为使用了外部dns,因此需要保证squid服务器能够访问你所设置的dnsnameserver.若作为内网使用,应修改
TAG: dns_testnames字段项,默认指向互联网的微软服务器等,克改为可以访问的域名
配置中不明白的地方请参阅squid权威指南.特别注意squid2.X版本和3.X版本的不同之处# WELCOME TO SQUID 3.0.STABLE21----server 192.168.3.10 by libingjin edit
# -----------------------------------------------------------------------------# ACCESS CONTROLS
# -----------------------------------------------------------------------------
# --TAG: acl
# --Default:
# --acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl mylan1 src 192.168.1.0/24
acl mydmz3 src 192.168.3.0/24
# --
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
# ------------------------
# --TAG: http_access
# --Default:
# --http_access deny all
http_access allow manager localhost
http_access deny manager
# --Deny requests to unknown ports
http_access deny !Safe_ports
# --Deny CONNECT to other than SSL ports
http_access deny CONNECT !SSL_ports
http_access allow all
# ------------------
# --TAG: icp_access
# --Default:
# --icp_access deny all
icp_access allow mylan1
icp_access allow mydmz3
icp_access deny all
# -----------------
# --TAG: htcp_access
# --Default:
# --htcp_access deny all
htcp_access allow mylan1
htcp_access allow mydmz3
htcp_access deny all
# ------------------
# --TAG: urlpath_regex
acl QUERY urlpath_regex -i cgi-bin /? /.jsp /.asp /.php /.cgi /.aspx
acl QUERYSSL url_regex -i ^http://
cache deny QUERY
cache deny QUERYSSL
# -----------------# NETWORK OPTIONS
# -----------------------------------------------------------------------------
# --TAG: http_port
# --Squid normally listens to port 3128
http_port 80 accel vhost vport
# ------------# OPTIONS WHICH AFFECT THE NEIGHBOR SELECTION ALGORITHM
# -----------------------------------------------------------------------------
# --TAG: cache_peer
# --Default:
# --none
cache_peer www.ynxt.com parent 80 0 no-query originserver name=ynxt
cache_peer www.ynest.com parent 80 0 no-query originserver name=ynest
cache_peer xxft.yn.gov.cn parent 80 0 no-query originserver name=xxft
cache_peer xxt.yn.gov.cn parent 80 0 no-query originserver name=xxt
# -------------------------------------------------------------------
# --TAG: cache_peer_domain
# --Default:
# --none
cache_peer_domain ynxt .ynxt.com
cache_peer_domain ynest .ynest.com
cache_peer_domain xxft xxft.yn.gov.cn
cache_peer_domain xxt xxt.yn.gov.cn
# --------------------------------
# --TAG: hierarchy_stoplist
# --We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?
# --------------------------# MEMORY CACHE OPTIONS
# -----------------------------------------------------------------------------
# --TAG: cache_mem (bytes)
# --Default:
# --cache_mem 8 MB
cache_mem 1024 MB
# --------------
# --TAG: maximum_object_size_in_memory (bytes)
# --Default:
# --maximum_object_size_in_memory 8 KB
maximum_object_size_in_memory 1024 KB
# ----------------------------------# DISK CACHE OPTIONS
# -----------------------------------------------------------------------------
# --TAG: cache_dir
# --Default:
# --cache_dir ufs /usr/local/squid3/var/cache 100 16 256
cache_dir ufs /usr/local/squid3/var/cache 10000 16 256
# ----------------------------------------------------
# --TAG: maximum_object_size (bytes)
# --Default:
# --maximum_object_size 4096 KB
maximum_object_size 32 MB
# --------------------------# LOGFILE OPTIONS
# -----------------------------------------------------------------------------
# --TAG: access_log
# --And priority could be any of:err, warning, notice, info, debug.
access_log /usr/local/squid3/var/logs/access.log squid
# ----------------------------------------------------
# --TAG: cache_log
# --Default:
# --cache_log /usr/local/squid3/var/logs/cache.log
cache_log /usr/local/squid3/var/logs/cache.log
# --------------------------------------------
# --TAG: pid_filename
# --Default:
# --pid_filename /usr/local/squid3/var/logs/squid.pid
pid_filename /usr/local/squid3/var/logs/squid.pid
# -----------------------------------------------
# --TAG: logfile_rotate
# --Default:
# logfile_rotate 10
logfile_rotate 7
# --------------
# --TAG: strip_query_terms
# --Default:
# --strip_query_terms on
strip_query_terms off
# -------------------# OPTIONS FOR TUNING THE CACHE
# -----------------------------------------------------------------------------
# --TAG: refresh_pattern
# --Suggested default:
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern (cgi-bin|/?) 0 0% 0
refresh_pattern . 0 20% 4320
# ----------------------------# ADMINISTRATIVE PARAMETERS
# -----------------------------------------------------------------------------
# --TAG: cache_mgr
# --Default:
# --cache_mgr webmaster
cache_mgr kmmartin@163.com
# ------------------------# ICP OPTIONS
# -----------------------------------------------------------------------------
# --TAG: icp_port
# --Default:
# --icp_port 0
icp_port 3130
# -----------# ERROR PAGE OPTIONS
# -----------------------------------------------------------------------------
# --TAG: error_directory
# --Default:
# --error_directory /usr/local/squid3/share/errors/templates
error_directory /usr/local/squid3/share/errors/Simplify_Chinese
# -------------------------------------------------------------# DNS OPTIONS
# -----------------------------------------------------------------------------
# --TAG: dns_nameservers
# --Default:
# --none
dns_nameservers 192.168.3.3
# -------------------------
# --TAG: dns_testnames
# --Default:
# --dns_testnames netscape.com internic.net nlanr.net microsoft.com
dns_testnames www.ynxt.com www.ynest.com xxt.yn.gov.cn xxft.yn.gov.cn
# -------------------------------------------------------------------# MISCELLANEOUS
# -----------------------------------------------------------------------------
# --TAG: forwarded_for on|off
# --Default:
# --forwarded_for on
forwarded_for on
# --------------
# --TAG: coredump_dir
# --Default:
# --coredump_dir none
coredump_dir /usr/local/squid3/var/cache
# -------------------------------------- - squid.sh的启动脚本
赋予可执行权限# chmod 755 squid.sh#!/bin/sh
#
ulimit -HSn 15000
# this script starts and stops Squid
echo 15000 > /proc/sys/fs/file-max
case "$1" in
start)
/usr/local/squid/sbin/squid -s
echo -n ' Squid'
;;
stop)
/usr/local/squid/sbin/squid -k shutdown
;;
esac#./squid.sh start就可以启动squid了
squid 3 反向代理 缓存服务器 安装配置精华指南 by lbj相关推荐
- nginx反向代理缓存服务器构建
博主QQ:819594300 博客地址:http://zpf666.blog.51cto.com/ 有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持! 代理服务可简单的分为正向代理和反向代理: ...
- 【推荐】如何用 Nginx 构建反向代理缓存服务器?
作者:一盏烛光,贤牛特邀工程师. 防伪码:曾经沧海难为水,除却巫山不是云. 代理服务可简单的分为正向代理和反向代理: 正向代理: 用于代理内部网络对 Internet 的连接请求(如×××/NAT), ...
- NGINX做反向代理缓存服务器原理
代理服务可以简单的分为正向代理和反向代理 正向代理: 用于代理内部网络对Internet的连接请求(如VPN/NAT),客户端指定代理服务器,并将本来要直接发送给目标web服务器的HTTP请求先发送到 ...
- 代理缓存服务器squid
链接 :[Linux通过squid配置代理上网] https://help.aliyun.com/knowledge_detail/41342.html?spm=5176.7841507.2.4.nS ...
- Squid代理缓存服务器
一.代理缓存服务器 1.分类 正向代理:部署在企业内部,实现企业内部客户端访问公网加速(ACL.缓存) 传统代理:需在客户端指向正向代理服务器的IP及端口,方可正常使用 透明代理:将正向代理服务器作为 ...
- nginx配置反向代理缓存
说明 最近运维一个网站里面含有不经常变化的小图片,而每次请求都需要调用file接口获取不太合适.所以就想利用nginx的反向代理缓存来减轻服务接口的请求压力. 工作原理 Nginx反向代理缓存,当客户 ...
- nginx反向代理+缓存开启+url重写+负载均衡(带健康探测)的部署记录
在日常运维工作中,运维人员会时常使用到nginx的反向代理,负载均衡以及缓存等功能来优化web服务性能. 废话不多说,下面对测试环境下的nginx反向代理+缓存开启+url重写+负载均衡(带健康探测) ...
- 转-架构高性能网站秘笈(四)——反向代理缓存
转自CSDN博客,u010425776,http://m.blog.csdn.net/u010425776/article/details/51096468 什么是反向代理? 在介绍"反向代 ...
- 部署Squid代理服务器 —— 反向代理(acl 访问控制 、sarg 日志分析、 Squid反向代理) —— 再续前缘..
部署Squid代理服务器 -- 反向代理 前言 部署前规划 acl 访问控制 sarg 日志分析 反向代理 前言 部署 Squid 代理服务的正向代理,咱们已经实现 可以参考前文 Squid ---- ...
最新文章
- Code Sign error: Provisioning profile 'xxxxxxxxxxxxxxxxxxxxxxxxx'
- Spring Ioc 之 Bean的加载(1)(生命周期)
- 『飞秋』Html.Label的缺陷及补救办法
- android语音识别开源代码,android语音识别,有没有相应的源码,教程可以推荐啊?
- 比特币程序_比特币如何运作? 我建立了一个应用程序向您展示。
- 小程序 const moment = require('moment')_小程序依赖分析实践
- Golang 大杀器之跟踪剖析 trace(转载)
- VB案例:简易记事本
- 最快的存储过程分页 50W
- java炫酷龙卷风源码_Java-使用二叉树实现快速排序-遁地龙卷风
- Android NDK开发之 NEON使用介绍
- Sublime Text插件:HTML+CSS+JAVASCRIPT+JSON快速格式化
- idea 添加格式化json插件GsonFormat 和快速解析第三方返回json数据
- Kettle下载与安装教程【保姆版】
- visual studio 2015 无法打开源文件“stdafx.h“
- 开源知识管理系统_开源MrDoc,一个适合个人和小型团队的文档、知识、笔记在线管理系统...
- ShowWindow函数用法。
- android 软解8k视频,一种基于CPU的8K超高清视频高速解码方法与流程
- 8月书讯丨11本新上好书速览(计算机+经管)
- node rimraf模块 递归删除文件夹内容
热门文章
- java——记录一次条形码、二维码、订单自动生成的制作
- Clock skew too great(37)-PREAUTH_FAILED
- 基于单片机的数字秒表
- 游戏中的抗锯齿技术Anti-Alasing提炼总结
- AIX上解压缩.tar.Z, .tar.gz, .zip
- Delphi中类的VMT
- 航天工程系统是什么?
- WARNING: Ignoring invalid distribution -ip (d:\python\lib\site-packages)
- 可以储存照片的字段类型是_在数据库中可用来存储图片的字段对象是哪种类型的字段?...
- 网址短连接 short url