centos 使用tinyproxy搭建 http代理服务

作者:matrix 被围观: 1,003 次 发布时间:2024-10-31 分类:Linux | 无评论 »

tinyproxy可以很轻量化的实现自己的http代理服务环境: centos install $ yum -y install tinyproxy config /etc/tinyproxy/tinyproxy.conf 为配置文件 # 设置代理端口Port 8484 # 允许连接的客户端IPAllow 127.0.0.1Allow 101.1.1.1 run sudo service tinyproxy startsudo service tinyproxy restartsudo service tinyproxy stop error 如果出现启动失败: [root@VM-0-3-centos tinyproxy]# systemctl status tinyproxy.service● tinyproxy.service - Startup script for the tinyproxy server Loaded: loaded (/usr/lib/systemd/system/tinyproxy.service; enabled; vendor preset: disabled) Active: failed (Result: protocol) sin......

gorm写入零值问题

作者:matrix 被围观: 1,084 次 发布时间:2024-10-21 分类:Golang | 无评论 »

gorm中如果数据为结构体类型的零值时,不会触发零值更新。比如当前有表结构体 type OrderTemplate struct { ID int `gorm:"primaryKey;autoIncrement;column:id" json:"id"` InputType int `gorm:"not null;default:1;column:input_type" json:"input_type"` } 注意:InputType类型为 int,设置了default为 1当数据传入 0 ,是 int 类型的默认零值0,会认为你没有传入所以就用default值去填充。如果这里不配置default,系统也就不会写入数据。 解决方案 结构体字段使用非int类型,如 sql.NullInt64,*int指针简单点建议直接使用指针类型。使用sql.NullInt64类型传入时需要注意设置Valid为 true sql.NullInt6......

本地化WordPress 的新浪微博图片外链

作者:matrix 被围观: 807 次 发布时间:2024-09-30 分类:Golang 零零星星 | 无评论 »

😀 免费的才是最贵的。新浪微博的图床早就挂了,目前的图片会限制请求头 referer。今天空了才把这部分图片迁移到本地。记录下这个临时脚本。脚本下载 WordPress 文章中的新浪图片到本地,然后数据库中的图片链接会执行替换。配置好信息之后正式执行记得放开 #94行的TODO。 自行测试~ package mainimport ( "database/sql" "fmt" "io" "net/http" "os" "path/filepath" "regexp" _ "github.com/go-sql-driver/mysql")const ( //TODO domain = "www.hhtjim.com" //WordPress 域名 db_user = "root" ......

Golang动态可变函数参数 参数默认值

作者:matrix 被围观: 1,511 次 发布时间:2024-08-17 分类:Golang | 无评论 »

Golang是不支持函数参数默认值的,但是也有很多办法可以解决 动态可变参数 func main() { addItem("11", "a1") addItem("2", "a2", "222")}func addItem(name, value string, opts ...string) { fmt.Println("add item-->", name, value) for _, opt := range opts { fmt.Println("opt:", opt) }} 其中opts ...string 表示可变参数,类型为string,如果需要不同类型传入 看下面 可变参数 + 动态类型 type AlfredItem struct { Title string Subtitle string Arg int}type AlfredWorkflow struct { Items []AlfredItem}func (aw *AlfredWorkflow) AddItem(name, value string, opts ...func(*......

go generate 为枚举类型生成字符串描述方法

作者:matrix 被围观: 1,465 次 发布时间:2024-08-10 分类:Golang | 无评论 »

go generate命令可以方便的为自动生成源代码,利用官方的stringer库来完成 安装stringer工具 如果本地已经安装,跳过 go get -u golang.org/x/tools/cmd/stringer Case main.GO package mainimport "fmt"type UserStatus intconst ( Active UserStatus = 40 Inactive UserStatus = 1 Pending UserStatus = 9 Other = Inactive) 上面定义的常量类型UserStatus,原始类型为 int 值,每次使用 fmt.Print打印会只显示数字,可读性会很差。那怎么让fmt.Print输出对应的描述?自定义结构体String() 方法,打印时会自动调用 ...func (s UserStatus) String() string { switch s { case Active: retu......

自动给 Google 搜索结果添加查看缓存功能

作者:matrix 被围观: 5,292 次 发布时间:2024-07-12 分类:零零星星 | 3 条评论 »

R.I.P. 2024年09月25日 google快照已死?️ https://www.solidot.org/story?sid=79336 Google 搜索结果的查看缓存功能下线其实很久了,每次都得手动 `cache:https://www.hhtjim.com/` 就很麻烦。有空搞了个油猴脚本能自动在Google搜索结果中添加 [Cache] 链接到该网页的缓存版本 ?? 这就方便多了 安装地址 https://greasyfork.org/zh-CN/scripts/500422-google-cache-viewer 脚本代码 // ==UserScript==// @name Google cache viewer// @namespace http://hhtjim.com/// @version 1.0.1// @description Automatically adds a cache link to Google Search results. / Google搜索结果中添加缓存按钮// @author Hootr......

Dockerfile多阶段构建镜像

作者:matrix 被围观: 1,734 次 发布时间:2024-07-06 分类:Golang Linux | 无评论 »

在构建GO的docker镜像时,都需要安装很多开发环境和依赖包,如果正常打包完整环境为镜像完全没有必要。因为运行时只需要Golang打包的二进制文件,不需要完整 dev 环境。Dockerfile多阶段构建就可以完美解决,将构建和运行环境分开,可以最终镜像最小化。 😆 😆 爽~~ # 第一阶段:使用开发环境镜像进行构建,设置别名builderFROM golang:1.22 AS builder# 设置工作目录WORKDIR /app# 复制所有文件到工作目录COPY . .# 编译应用程序RUN go build -o go-demo .# 第二阶段:使用小体积的基础镜像 打包最终镜像FROM alpine:latestWORKDIR /app# 从构建阶段复制编译好的可执行文件COPY --from=builder /app/go-demo .# 运行可执行文件CMD [".......

根据现有的libjpeg依赖修复ImportError

作者:matrix 被围观: 1,859 次 发布时间:2024-06-25 分类:Linux Python | 无评论 »

Python的Pillow库(PIL)处理图像时,可能会遇到库依赖问题,例如缺少libjpeg.so.9文件 from PIL import ImageTraceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/work/.local/lib/python3.7/site-packages/PIL/Image.py", line 103, in <module> from . import _imaging as coreImportError: libjpeg.so.9: cannot open shared object file: No such file or directory 正常来说是安装libjpeg库来解决 apt-get install libjpeg-dev / yum install libjpeg-devel 。但是我这台 CentOS机器之前有这个依赖,还有就是网络问题很麻烦 查找现有的libjpeg库文件 sudo find / -name "li......