squid安装及运行指南

squid安装及运行指南

0. What is squid

Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher、HTTPS和HTTP协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。

1. Download

下载源码: http://www.squid-cache.org/Versions/v3/3.5/

2. Compile & Install

# tar zxvf squid-3.5.27.tar.gz
# cd squid-3.5.27/
# ./configure
# make
# make install

3. Configure

当编译安装完成后,squid二进制被安装在/usr/local/squid目录下,具体目录为/usr/local/squid/sbin/squid,目录结构如下:

root@xxx:/usr/local/squid# tree -L 1 .
.
├── bin
├── etc
├── libexec
├── sbin
├── share
└── var

需要修改一下etc下的默认配置squid.conf,加入一行:

http_port 3129 intercept

更多的配置信息请看参考网址中的第二项,包括对代理网站的访问控制等信息配置。

4. Run

创建缓存目录
# /usr/local/squid/sbin/squid -z 
使配置文件生效(修改配置文件后需要执行)
# /usr/local/squid/sbin/squid -k parse
以后台进程的形式启动squid
# /usr/local/squid/sbin/squid -s

默认配置下日志在/usr/local/squid/var/logs/目录下,日志包括access.log和cache.log,其中运行日志在cache.log,如果进程退出可以查看该日志以发现原因。

5. How to use

当squid进程正常运行后,默认监听3128端口,即开启了3128端口作为代理端口,我们可以设置代理端口为127.0.0.1:3128,接下来用该端口作为代理服务器就可以去尝试访问internet了,正常访问即说明运行正确。

遇到的问题

  • ERROR: No forward-proxy ports configured.
    解决方案: https://www.cnblogs.com/AloneSword/p/4090827.html

  • WARNING: Cannot write log file: /usr/local/squid/var/logs/cache.log
    /usr/local/squid/var/logs/cache.log: Permission denied
    messages will be sent to 'stderr'.
    解决方案:

     chmod -R 777  /usr/local/squid/var/logs
    

参考:

posted @ 2018-01-11 20:01  puyangsky  阅读(10537)  评论(0编辑  收藏  举报