当前位置: 首页 > 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/a/282878.html

相关文章:

  • 从swagger直接转 vue的api
  • 企业一站式管理系统odoo的研究——PLM插件的搭建
  • 【计算机网络】TCP网络程序
  • vscode远程连接服务器并启用tmux挂载进程
  • 【HarmonyOS NEXT】一次开发多端部署(以轮播图、Tab栏、列表为例,配合栅格布局与媒体查询,进行 UI 的一多开发)
  • 【设计模式】行为型模式(二):策略模式、命令模式
  • 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性能系统监控工具
  • 【实战场景】敏感词过滤如何实现?