当前位置: 首页 > article >正文

源码编译并安装Squid的方法

问题描述

RockyLinux9.4 yum包中的Squid版本是5.5, 不是最新的版本,我需要安装最新版本的Squid。

源码编译并安装Squid的步骤

  • 访问Squid官网,查看最新的稳定版本为 6.10
  • 下载6.10版本的源码,各发行版编译安装Squid的方法参考官方文档

下面给出我在RockyLinux9.4 VMware虚拟机上,编译安装Squid 6.10的过程:

下载依赖

yum install -y perl gcc autoconf automake make sudo wget
yum install -y libxml2-devel libcap-devel libtool-ltdl-devel

下载Squid源码并编译安装

wget https://www.squid-cache.org/Versions/v6/squid-6.10.tar.gz
tar -zxvf squid-6.10.tar.gz
cd squid-6.10

./configure --prefix=/usr --includedir=/usr/include --datadir=/usr/share --bindir=/usr/sbin --libexecdir=/usr/lib/squid --localstatedir=/var --sysconfdir=/etc/squid
make -j4
make install

添加squid用户, 创建Squid日志目录并设置权限

useradd -M -s /sbin/nologin squid
mkdir -p /var/log/squid
chown -R squid:squid /var/log/squid

修改squid配置文件

修改/etc/squid/squid.conf,新增如下配置项:

cache_effective_user squid
cache_effective_group squid
cache_log /var/log/squid/cache.log
access_log /var/log/squid/access.log squid

注意事项:

  • 需要指定cache_effective_usercache_effective_group, 一般设置为squid; 注意不能设置成root,否则启动会提示错误。
  • 如果不设置cache_effective_usercache_effective_group, Squid进程的user和group为nobody,启动后会异常退出,报fopen写入cache.log没有权限(13)的错误!
  • 在squid配置文件里自定义cache_log,access_log的路径为/var/log/squid。默认的路径为/var/log, squid用户没有权限写入。

测试Squid配置是否正确

squid -k parse
squid -z

如果提示报错,根据错误信息修改配置项。

启动Squid

squid # 启动
netstat -anpt | grep squid # Squid默认端口3128, 用netstat查看3128端口是否LISTEN
tcp6  0  0  :::3128          :::*         LISTEN    pid/(squid-1)

测试Squid

curl -x localhost:3128 https://www.baidu.com

停止Squid

squid -k shutdown

参考

https://www.squid-cache.org/


http://www.kler.cn/news/282878.html

相关文章:

  • BEVDet4D:多帧时序信息融合方法详解
  • 富格林:正规方式顺利盈利出金
  • 性能测试的基本概念
  • Pycharm安装报错:Cannot detect a launch configuration 解决办法
  • 吴恩达机器学习笔记 四十五 基于内容的过滤的tensorFlow实现
  • 怎么解决 hash 碰撞,用 C++ 实现 hashMap?
  • Nosql数据库redis集群配置详解
  • Nginx轮询负载均衡配置指南:实现高效请求分发
  • docker常用命令使用dockerfile构建镜像,推送到私有镜像仓库
  • 【AI绘画】Midjourney前置指令/describe、/shorten详解
  • 适配算能BM1684开发板,bmodel推理模型转换
  • 矩阵分块乘法的证明
  • C语言典型例题55
  • VScode打开json文件和md文件直观展示方法
  • 免费批量Excel文件合并、拆分工具
  • Linux系统结构
  • 加密软件的特殊功能有哪些
  • STM32 - 按键控制LED灯
  • 在centos中安装 --nmon性能系统监控工具
  • 【实战场景】敏感词过滤如何实现?
  • 阿里最新发布Qwen2-VL:看视频的AI到底能干些什么惊人的事?
  • gui.js可视化插件的使用
  • 前端需调用后端数据作为判断条件
  • spring揭秘14-JdbcTemplate概述与使用操作对象访问数据
  • CSS 嵌套元素的隐藏规则
  • Spring Boot DevTools:简化开发,实现热部署
  • 棱镜七彩参编的又一国家标准正式发布!
  • 探索音视频SDK在软件集成与私有化部署中的技术难题与解决策略
  • JAVA基础:文件字符流
  • C#高效异步文件监控与日志记录工具