首页
关于
Search
1
AdGuardHome 安装及部署教程
38,228 阅读
2
搭建基于telegram的无限网盘
9,646 阅读
3
最新Cloudflare免费自选IP教程(非Partner)
8,932 阅读
4
关于微软Azure学生白嫖指南
8,829 阅读
5
Oracle开放全部端口并关闭防火墙
8,651 阅读
默认分类
技术搬砖
教学设计
故事奇谈
生活琐事
错题分析
精品软件
登录
Search
标签搜索
docker
张至顺
图床
Cloudflare
金刚长寿功
PT
qBittorrent
阿里云
onedrive
telegram
PHP
青龙
python
内网穿透
一键
telegraph
ipv6
cf_workers
签到框架
目录列表
myedunote
累计撰写
94
篇文章
累计收到
1
条评论
首页
栏目
默认分类
技术搬砖
教学设计
故事奇谈
生活琐事
错题分析
精品软件
页面
关于
搜索到
78
篇与
技术搬砖
的结果
2024-09-01
serv00切换php版本
今天想着吧自己的常用网址搬到 serv00 但是转移过程发现 php 版本过高 (不要问为什么不支持 8.0 我也不知道问我用来当做常用网址的程序作者去吧~) 查阅资料发现也是很简单只需要在 /domains/DOMAIN/.htaccess 文件里面添加. htaccess 文件最后一行 或第一行 或 伪静态规则之外,加入其中 74 可以改成自己想要的 php 版本AddType application/x-httpd-php74 .php其他版本配置:AddType application/x-httpd-php56 .php AddType application/x-httpd-php70 .php AddType application/x-httpd-php71 .php AddType application/x-httpd-php72 .php AddType application/x-httpd-php73 .php
2024年09月01日
11 阅读
0 评论
0 点赞
2024-08-30
全新的Telegraph图床
介绍基于Cloudflare Workers的Telegraph图床目前提供D1和KV两个版本,二者的主要区别在于存储位置D1版本使用Cloudflare D1数据库进行存储,访问后台管理更流畅KV版本则使用Cloudflare KV空间,数据多的情况下,加载后台页面需要的时间长一点源码:https://github.com/0-RTT/telegraph 成品:https://545040.xyz/(使用D1数据库进行部署)效果图 功能支持上传大于5MB的图片。在图床界面中可以直接粘贴上传。选择图片后会自动上传,使用方便。管理界面支持查看和播放MP4文件。显示上传时间,并支持按上传时间排序。支持修改后台路径为 /admin,可在代码的第二行进行调整。图片管理功能可通过访问域名 /admin 实现,且图片支持懒加载。仅允许代理自己上传的图片,无法访问通过其他TG图床上传的链接。支持JPEG、JPG、PNG、GIF和MP4格式,GIF和MP4的大小需≤5MB。支持URL、BBCode和Markdown格式,点击对应按钮可自动复制相应格式的链接。选择图片后会自动压缩,以节省Cloudflare和Telegraph的存储空间,同时加快上传速度。对于需要自定义UI的用户,可以自行修改HTML代码,在修改html代码时能够保留项目开源地址。D1版本部署D1数据库限制D1数据库限制详情对于个人用户,500MB的免费存储空间足够用于储存图片链接使用。类别限制数据库数量50,000 (付费用户) beta / 10 (免费用户)最大数据库大小2 GB (付费用户) beta / 500 MB (免费用户)每个帐户的最大存储空间50 GB (付费用户) beta / 5 GB (免费用户)Time Travel 间隔时间 (时间点恢复)30 days (付费用户) / 7 days (免费用户)最大 Time Travel 还原操作数每 10 分钟 10 次还原(每个数据库)每个工作线程调用的查询数(读取子请求限制)50 (Bundled) / 1000 (Unbound)每个表的最大列数100每个表的最大行数无限制(不包括每个数据库的存储限制)最大字符串或 BLOB 表行大小1,000,000 bytes (1 MB)最大 SQL 语句长度100,000 bytes (100 KB)每个查询的最大绑定参数数100每个 SQL 函数的最大参数数32LIKE 或 GLOB 模式中的最大字符数(字节)50 bytes每个工作线程脚本的最大绑定数约5,000 人图片教程1、 创建D1数据库2、 数据库初始化数据库初始化命令CREATE TABLE media ( key TEXT PRIMARY KEY, timestamp INTEGER NOT NULL, url TEXT NOT NULL );3、创建Worker程序4、设置自定义域名或路由设置优选域名如果需要加速cf worker,并且域名托管在CF只需要将自定义域的解析记录删除,然后重新添加新的cname记录到任意优选CNAME域名即可(不要勾选小云朵,选择仅DNS) 优质优选cname地址如下 https://monitor.gacjie.cn/page/cloudflare/cname.html进入该管理域名内,左侧有个worker路由,将刚刚优选的二级域名(后面最好加/*)填入这个路由中,然后worker选择指向,选择刚刚创建的,最后手动访问一次网站即可5、设置后台管理环境变量环境变量设置账号USERNAME 环境变量设置密码PASSWORD数据库绑定变量DATABASE KV版本部署KV限制KV键值限制详情对于个人用户,免费额度足够用于储存图片链接使用。类别免费用户付费用户读每天 100,000 次读取无限写入不同的键每天 1,000 次写入无限写入同一密钥每秒 1 次每秒 1 次操作/worker调用10001000命名空间100100存储/帐户1 GB无限存储/命名空间1 GB无限键/命名空间无限无限键大小512 bytes512 bytes键元数据1024 bytes1024 bytes值大小25 MiB25 MiB使用方法将代码部署到 Cloudflare Worker,设置自定义域和变量(需要设置环境变量并绑定 KV 命名空间)。步骤 1: 创建 KV 命名空间点击 Workers 和 Pages。点击 KV。点击 创建命名空间。填写命名空间名称(可随意命名)。点击 添加。步骤 2: 创建 Worker点击 Workers 和 Pages。点击 创建。填写 Worker 名称(可随意命名)。点击 部署。步骤 3: 添加自定义域点击刚刚创建的 Worker 名称。点击 设置。点击 触发器。点击 添加自定义域。步骤 4: 添加环境变量点击刚刚创建的 Worker 名称。点击 设置。点击 变量。点击 添加环境变量。填写两个环境变量:USERNAME和PASSWORD,分别对应的值为账号和密码。步骤 5: 绑定 KV 命名空间点击刚刚创建的 Worker 名称。点击 设置。点击 变量。点击 KV 命名空间绑定。点击 编辑变量。填写变量名称 imgurl,并选择前面设置的 KV 命名空间。步骤 6: 编辑 Worker 代码点击刚刚创建的 Worker 名称。点击 编辑代码。清除 Worker 原本的代码。复制粘贴 worker.js 中的代码。将代码第一行中的example.com改为你的自定义域。点击 部署。访问自定义域名即可访问图床。参考链接1、利用D1数据库储存Telegraph图床链接 ,超详细的图片教程2、分享一下我个人使用CF优选的经验和方法
2024年08月30日
18 阅读
0 评论
0 点赞
2024-08-26
Virmach的ipv6设置方法分享
Virmach东京配置了ipv6,用脚本重装Debian 12 之后,控制台点击Reconfigure Networking后无法连接ssh控制台登录VNC,用root账户登录,使用ip a查不到ip地址 解决办法:执行以下命令sudo /sbin/dhclient接下来再执行ip a,就能显示ip信息了,那如何添加ipv6访问呢?进入并编辑/etc/network/interfaces文件vi /etc/network/interfaces自行替换XXX等关键信息# Generated by SolusVM auto lo iface lo inet loopback # `ip a`显示的网卡信息 auto ens3 iface ens3 inet static address 45.66.222.XXX gateway 45.66.222.1 netmask 255.255.255.0 dns-nameservers 8.8.8.8 8.8.4.4 iface ens3 inet6 static address 2a12:a301:0:X::XXX:XXX netmask 64 gateway 2a12:a300:0::1 dns-nameservers 2001:4860:4860::8888 2001:4860:4860::8844加完保存,reboot重启下就ok了
2024年08月26日
11 阅读
0 评论
0 点赞
2024-08-13
使用阿里云 OSS 存储服务 + CloudFlare 配置图床
前言带宽联盟是 Cloudflare 推出的一项服务,由一群具有前瞻性思维的云服务和网络公司组成,致力于为共同客户降低或免除数据传输(带宽)费用。为什么能做到非常低甚至能免除成本呢?云厂商跟 Cloudflare 直接的数据传输,是通过专用网络接口 (PNI) 或专用互连的,中间不经过任何网络提供商(比如电信),既然是直连,那么就不存在 PNI 的增量成本了,自然也就便宜了。虽然阿里云不是第一批加入带宽联盟的,但是到现在为止也加入一年多了(我白嫖也一年多了),并推出了 Cloudflare+Alibaba Cloud OSS 的解决方案。这点还是非常良心的,虽然腾讯云后来也加入了,但是我觉得不够“清晰透明”,就一直没试过。虽然有时候 Cloudflare 是“减速 CDN”,但是既然咱选择了白嫖,那么就要贯彻到底了,对于有海外业务的小伙伴来说,这样反而能省下不少的开销存储费用根据存储费用文档,我们可以了解到,在海外(部分)区域,标准存储(本地冗余)容量支持使用5 GB/月的免费额度(即每月标准存储(本地冗余)容量≤5 GB时,不收取标准存储(本地冗余)容量费用)。虽然不支持中国大陆免费 5GB 存储,不过并没有关系,支持的话我也不推荐你用,往下看就明白了。流量费用根据流量费用文档,我们可以了解到,在海外(部分)区域,外网流出流量(oss_flow_out)支持使用5 GB/月的免费额度(即每月外网流出流量≤5 GB时,不收取外网流出流量费用)。有的小伙伴可能会好奇,既然可以免流,那这 5GB 外网流出流量还有什么用呢?看我上面那张图,你会发现,外网流出流量,无法做到完全没有。我每个月都有几 KB 的漏网之鱼,这还是我用量少的情况下,用的多自然就可能漏的多。原因就是你无法把缓存命中率做到 100%,可能我设置方式不是最优,但是能做到接近 100% 也就够了。但我们还需要防范直接打到源站的流量,这 5GB 相当于一个缓冲,如何防范打到源站,我下面也会讲。请求费用根据请求费用文档,算了没必要看了,请求费用是需要收费滴,不过好在便宜,几乎可以忽略不计。想必有经验的小伙伴已经察觉到了,这套方案防 D 不防 C,不过方案是有平替的,只是各有优劣。但对于本身有这个需求的用户来说,确实能省钱。最后,是 Cloudflare 这边的费用对于阿里云来说,传输到 Cloudflare 是零出口费用。有一点需要特别注意:出口传输费优惠或豁免可能需要与托管服务提供商注册,不适用于源于中国大陆的数据传输。也就是说,OSS 源站必须是海外节点,所以大陆节点没有免费 5GB 存储,其实无所谓的啦!主要操作流程创建 Bucket:开通 OSS 并创建 Bucket。创建 Bucket 时选择海外的地域(如果在别的地域没有服务器的话,建议使用香港),存储类型选择标准存储即可,读写权限一定要选择私有,其余的附加服务按需启用(有的得加钱)。 但为了让图床正常使用,需要设置让Cloudflare的ip能够访问。Cloudflare的ip官方已经给出了:IP Ranges简单处理一下,173.245.48.0/20,103.21.244.0/22,103.22.200.0/22,103.31.4.0/22,141.101.64.0/18,108.162.192.0/18,190.93.240.0/20,188.114.96.0/20,197.234.240.0/22,198.41.128.0/17,162.158.0.0/15,104.16.0.0/13,104.24.0.0/14,172.64.0.0/13,131.0.72.0/22配置访问权限:进入权限控制 -> Bucket 授权策略面板,添加授权,配置如下图。配置 CDN:在 CloudFlare 的 DNS 管理面板添加 CNAME 记录,目标设为 Bucket 的域名(可以在 Bucket 的概览界面找到),代理状态设为已代理,否则 CDN 不起作用。绑定域名:在阿里云的 Bucket 配置 -> 域名管理界面绑定你刚设置的域名,这时阿里云需要验证域名的所有权,按照其所说的在 CloudFlare 的 DNS 管理处添加指定 TXT 记录即可。创建并添加证书:在 CloudFlare 的配置面板的 SSL/TLS -> 源服务器处,选择创建证书。创建之后会告诉你源证书与私钥,这个界面暂时不要动。打开刚才在阿里云控制台绑定证书的界面,选择证书托管,并上传 SSL 证书,这时会打开 SSL 证书的界面,选择上传证书,并将 CloudFlare 给出的源证书和密钥复制到上传证书的对应字段处(证书名字随便设),然后确定。这时切换回上传 SSL 证书,应该就能在证书名称处看到刚刚设置的证书名字了(看不到的话重开一下这个界面试试),选中,然后点下方的上传即可。然后我们查看域名绑定配置,发现已经绑定上了。然后我们去上传一张照片。自有域名选择自己配置好的解析域名,我们就可以看到 URL 已经变成咱们自定义的啦!安全性配置跨域设置:在阿里云 OSS 的数据安全 -> 跨域设置中创建跨域规则,来源设置为你的网站的地址。为了能让网站在本地测试时也能正常展示图片,建议同时添加localhost:*与127.0.0.1:*。防盗链设置:和跨域设置类似。不同之处在于 Referer 是包含请求协议的,所以类似于example.org或localhost:*等不包括协议的配置是无效的,需要改为https://example.com或*://localhost:*;需要注意的是*.example.org虽然是有效的,但是没有指定 https 协议,安全起见最好改为https://*.example.org。设置错误页:S3协议的bucket在公开读的权限下会默认展示桶内文件列表和路径,特征明显而且并不友好。绝大多数的对象存储都支持设置静态网站index.html和错误页404.html的设置,比如阿里云OSS在【基础设置】-【静态页面】下。这里随手找了两个单页供选择和参考CloudFlare安全规则:PicGo 配置PicGo 是一款快速上传图片到图床,并自动复制图片 URL 到剪贴板的工具,你可以在 Github 的 release 页获取该程序。权限设置:在阿里云的权限控制 -> Bucket 授权策略面板新增授权,配置如下:如果当前没有 RAM 子帐号,请点击右上角头像 -> 访问控制,然后在左侧的身份管理 -> 用户处创建一个子帐号。创建完成后在子帐号的详情页创建 AccessKey,得到 AccessKey 的 KeyID 与 KeySecret,保留备用。上传配置:打开 PicGo 主界面,在图床设置 -> 阿里云 OSS 内填写对应的表单项。“KeyID” 与 “KeySecret” 即刚才获取的子帐号 AccessKey 的 KeyID 与 KeySecret,“设定 Bucket” 为 Bucket 的名称,“存储区域” 为 Bucket 所在区域(与 Bucket 域名内的值统一,例如oss-cn-hongkong),自定义域名填写你设置的域名,其余两项按需填写即可。配置完成后点击确定并设为默认图床。参考网站:https://blog.furffisite.link/p/imagebed-oss-confhttps://blog.besscroft.com/articles/2022/distributed-storage-oss/
2024年08月13日
31 阅读
0 评论
0 点赞
2024-08-10
云函数自建 Vaultwarden 密码管理器: 稳定、低成本、高可用、安全
最近看到 Chrome 密码管理器出现问题了,虽然没有波及到我,但感觉用谷歌浏览器的密码管理器还是不太安全,所以准备自建。自建目标稳定低成本高可用安全经过考虑, 选择了 Vaultwarden,并用阿里云函数通过 docker 部署。Vaultwarden 简介Vaultwarden 是一款开源密码管理器, 通过 Rust 编写并基于 Bitwarden API 实现。客户端仍使用 Bitwarden, 只需对接 Vaultwarden 的 API 即可。准备工作一个阿里云账号(腾讯云不知道有没有 docker 部署)本地 docker 环境或具有 docker 环境的 VPS (最好是国内的, 传输更快)部署步骤1. 创建阿里云容器镜像服务实例登录阿里云账号, 进入容器镜像服务控制台开通免费个人实例创建命名空间 (名称随意)创建名为 "vaultwarden" 的镜像仓库设置访问凭证密码2. 登录 Docker 到阿里云docker login --username=xxxxxxxxxxxx registry.cn-shenzhen.aliyuncs.comxxxxx 是你的阿里云账号,就是右上角头像那里,看清楚不是 id,一般新用户是 “aliyun” 开头的,改了的自己看清楚登录密码就是上面访问凭证设置的密码3. 准备并上传 Docker 镜像# 拉取官方镜像 docker pull vaultwarden/server:latest # 查看镜像ID docker images # 标记镜像 docker tag 9ae942f38c7c registry.cn-shenzhen.aliyuncs.com/space/vaultwarden:2024.8.5 # 推送镜像到阿里云 docker push registry.cn-shenzhen.aliyuncs.com/space/vaultwarden:2024.8.5这一步很重要,是为了上传镜像到阿里云(阿里不允许从公用 hub 直接 pull)cn-shenzhen 是地域,自己换成自己开的地域,space 是上面设置的命名空间,vaultwarden 就是上面设置的你准备上传到阿里的镜像仓库名称,2024.8.5 是 tag,自己随便设置就行,我喜欢设置日期,方便后面更新的时候对比。4. 创建阿里云函数打开函数计算控制台创建 Web 函数, 选择自定义容器镜像选择刚才上传的镜像设置监听端口为 80配置 CPU 和内存 (0.25 CPU, 256MB 内存),个人使用是够了的,别开高了,等会内存泄漏,反薅设置单实例并发为 100选择上海时区5. 配置函数开启专有网络 (自动配置)开通 NAS 文件系统 (自动配置),会挂载一个点,自己看挂载的目录添加环境变量:# 数据目录 DATA_FOLDER=/mnt/vaultwarden # 这个不解释,自己搜索 ENABLE_DB_WAL=false部署函数6. 临时访问设置自己在阿里云有已经备案过的域名可以跳过 6 和 7 步,直接绑定自己的。由于近期云函数整改, 需要通过以下步骤实现临时访问:创建新的 Flask 应用获取 30 天有效域名将该域名绑定到 Vaultwarden 函数,在进行 web 操作7. 后续操作在 30 天域名过期前, 通过 Web 导入密码库之后直接使用函数原始 URL 调用 API成本估算免费套餐结束后, 个人使用年费用预计在几块钱左右,小 cpu 加冷启动会更便宜云函数正价、nas 存储的成本自己去看阿里云的价格表注意别让反薅了
2024年08月10日
75 阅读
0 评论
1 点赞
2024-08-03
一个Linux服务器WEB SSH面板(webSSH&webSFTP)
[!WARNING]初次部署EasyNode,登录系统后务必记得修改默认账户密码 admin/admin![!WARNING]强烈建议使用 iptables 或 fail2ban 等安全服务限制IP访问,谨慎暴露面板服务到公网。[!NOTE]客户端信息监控与webssh功能都将以该服务器作为中转。中国大陆连接建议使用香港、新加坡、日本、韩国等地区的低延迟服务器来安装服务端功能[ ] webssh终端&SFTP[ ] 批量导入(Xshell&FinalShell)[ ] 实例分组[ ] 凭据托管[ ] 邮件通知[ ] 服务器状态推送[ ] 脚本库[ ] 批量指令[x] 终端自定义安装服务端安装占用端口:8082 推荐使用docker镜像安装Dockerdocker run -d --net=host --name=easynode-server -v $PWD/easynode/db:/easynode/app/db chaoszhu/easynode访问:http://yourip:8082手动部署依赖Nodejs版本 > 20+git clone https://github.com/chaos-zhu/easynode cd easynode yarn cd web yarn build mv dist/* ../server/app/static cd ../server yarn start # 后台运行需安装pm2 pm2 start index.js --name easynode-server访问:http://yourip:8082查看日志:pm2 log easynode-server启动服务:pm2 start easynode-server停止服务:pm2 stop easynode-server删除服务:pm2 delete easynode-server客户端安装客户端用于实时向服务端推送系统、公网IP、CPU、内存、硬盘、网卡等基础信息,不安装不影响使用面板,但是无法实时同步基础信息。占用端口:22022安装curl -o- https://mirror.ghproxy.com/https://raw.githubusercontent.com/chaos-zhu/easynode/main/client/easynode-client-install.sh | bash卸载curl -o- https://mirror.ghproxy.com/https://raw.githubusercontent.com/chaos-zhu/easynode/main/client/easynode-client-uninstall.sh | bash查看客户端状态:systemctl status easynode-client查看客户端日志: journalctl --follow -u easynode-client查看详细日志:journalctl -xe--
2024年08月03日
61 阅读
0 评论
1 点赞
2024-07-30
Docker部署搜索工具SearXNG
SearXNG 是用 Python 编写的一款开源搜索工具安装前准备工作SearXNG 文档地址:网页链接Github 开源地址:网页链接Docker 安装教程 (菜鸟教程):网页链接Docker-Compose 安装教程 (菜鸟教程):网页链接文章参考:我不是咕咕鸽大佬的博客安装部署步骤一、创建项目存放路径并克隆源码cd /opt #在opt目录下创建 git clone https://github.com/searxng/searxng-docker.git #克隆源码 mv searxng-docker searxng #强迫症改名步骤二、修改 Docker-Compose 配置文件cd searxng vim docker-compose.yaml将运行 candy 部分注释掉,因为我们不用 Candy 做反向代理将这里的 IP 地址从 127.0.0.1 改成 0.0.0.0 以便局域网访问,将冒号前面的端口修改成自己服务器上没有被占用的端口编辑环境配置vim .env将域名修改成自己准备好的域名步骤三、编辑容器配置文件cd searxng生成密钥sed -i "s|ultrasecretkey|$(openssl rand -hex 32)|g" settings.yml修改配置文件,取消限制,将 limter 改成 false步骤四、启动容器cd /opt/searxng docker-compose up -d步骤五、开启宝塔面板反向代理将反向代理配置部分修改如下location ^~ { proxy_pass http://127.0.0.1:自定义的端口; proxy_set_header Host $host; proxy_set_header Connection $http_connection; proxy_set_header X-Scheme $scheme; proxy_set_header X-Script-Name /searxng; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
2024年07月30日
59 阅读
0 评论
2 点赞
2024-07-30
Docker部署MeloTTS高质量多语言文本转语音(TTS)
MeloTTS:由MyShell AI开发的一个高质量的多语言文本到语音(TTS)库。 支持英语、西班牙语、法语、中文、日语和韩语等多种语言。 速度非常快,支持中英混合的发音,能生成清晰、自然的语音输出。 即使在普通的在CPU上也能实现实时语音合成。主要功能:多语言支持:MeloTTS支持多种语言的文本到语音转换,包括英语(有美国、英国、印度、澳大利亚等多种口音)、西班牙语、法语、中文、日语和韩语。这使得它适用于全球多种语言环境的应用场景。中英混合发音:特别对于中文,MeloTTS支持中英混合的发音,这是在多语言交流中非常实用的功能,能够处理包含英文单词的中文文本。实时CPU推理:MeloTTS设计优化以确保即使在没有GPU加速的情况下,也能在CPU上实现实时语音合成,这提高了其在不同硬件环境下的可用性。高质量语音输出:MeloTTS旨在生成清晰、自然的语音输出,力求在各种支持的语言中保持语音的自然度和清晰度。易于安装和使用:提供了简单的安装指南和Python API,使得用户可以轻松地在Linux环境中安装MeloTTS,并通过几行代码实现文本到语音的转换。Linux and macOS InstallThe repo is developed and tested on Ubuntu 20.04 and Python 3.9.git clone https://github.com/myshell-ai/MeloTTS.git cd MeloTTS pip install -e . python -m unidic downloadDocker InstallBuild Dockergit clone https://github.com/myshell-ai/MeloTTS.git cd MeloTTS docker build -t melotts . Run Dockerdocker run -it -p 8888:8888 melottsIf your local machine has GPU, then you can choose to run:docker run --gpus all -it -p 8888:8888 melottsThen open http://localhost:8888 in your browser to use the app.Python APIfrom melo.api import TTS # Speed is adjustable speed = 1.0 device = 'cpu' # or cuda:0 text = "我最近在学习machine learning,希望能够在未来的artificial intelligence领域有所建树。" model = TTS(language='ZH', device=device) speaker_ids = model.hps.data.spk2id output_path = 'zh.wav' model.tts_to_file(text, speaker_ids['ZH'], output_path, speed=speed)
2024年07月30日
65 阅读
0 评论
0 点赞
2024-07-30
部署changedetection.io,一个网站更改检测、监控和通知的开源工具
官方Github: https://github.com/dgtlmoon/changedetection.ioWeb Site Change Detection, Monitoring and Notification. Live your data-life pro-actively, Detect website changes and perform meaningful actions, trigger notifications via Discord, Email, Slack, Telegram, API calls and many more.网站更改检测、监控和通知。 主动体验您的数据生活,检测网站更改并执行有意义的操作,通过 Discord、电子邮件、Slack、电报、API 调用等触发通知。准备工作Docker 安装教程 (菜鸟教程):网页链接Docker-Compose 安装教程 (菜鸟教程):网页链接宝塔面板,反代环境部署执行以下命令,新建目录mkdir -p /opt/docker/changedetection.io && cd /opt/docker/changedetection.io新建docker-compose.yaml文件然后输入以下配置内容:version: "3" services: changedetection: image: ghcr.io/dgtlmoon/changedetection.io container_name: changedetection hostname: changedetection restart: unless-stopped environment: - USE_X_SETTINGS=1 - BASE_URL=https:// #修改成你的域名 - PLAYWRIGHT_DRIVER_URL=ws://playwright-chrome:3000/ ports: - 20041:5000 #2077为暴露端口,如被占用,请自行更改替换,需要在云服务器的控制台防火墙开放相应端口! volumes: - changedetection-data:/datastore playwright-chrome: image: browserless/chrome hostname: playwright-chrome restart: unless-stopped volumes: changedetection-data:输入执行以下命令后台启动容器docker compose up -d访问 https://ip:20041 进入主页修改网页抓取方式点击SETTINGS,Fetching中的Fetch Method,将其改为Playwright Chromium/Javascript via 'ws://playwright-chrome:3000/',然后Save即可!监控可以改监控间隔,点击 Edit:General: URL: https://api.bilibili.com/x/space/wbi/arc/search?mid=8366990&ps=30&tid=0&pn=1&keyword=&order=pubdate&order_avoided=true&w_rid=b37f7220280dbec445b877940e8bbc36&wts=1671982474 Time Between Check: 0 0 0 5 0 Request: Fetch Method: Basic fast Plaintext/HTTP Client Request method: GET Request headers: { accept: application/json, text/plain, */* accept-encoding: gzip, deflate, br accept-language: zh-CN,zh;q=0.9,en-AS;q=0.8,en;q=0.7 cache-control: no-cache cookie: buvid3=F8D5D1C8-55E2-23AC-AA4B-CD66147A8A0488878infoc; i-wanna-go-back=-1; b_ut=7; _uuid=938E2C3F-2567-F173-BA77-8E34C109BC47888980infoc; buvid_fp=a65c806ec103b5691068a7fe2d31f818; buvid4=891AB099-8FE4-6031-3245-4DCA36CEBFD789604-022051401-sluv7aFmF1Lh17bDnV1PEA%3D%3D; CURRENT_FNVAL=4048; blackside_state=1; PVID=5; b_lsid=F10E97E10F_18549E99616 dnt: 1 origin: https://space.bilibili.com pragma: no-cache referer: https://space.bilibili.com/8366990/video sec-ch-ua: "Not?A_Brand";v="8", "Chromium";v="108", "Google Chrome";v="108" sec-ch-ua-mobile: ?0 sec-ch-ua-platform: "macOS" sec-fetch-dest: empty sec-fetch-mode: cors sec-fetch-site: same-site user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36 } Filters & Triggers: CSS/JSONPath/JQ/XPath Filters: json:$.data.list.vlist[0].[title] Notifications: tgram://5705562690:AAasdasddbaInDL0lHh8bcab-A7O4BpWv9_gvfE/2053317177/最新案例:想象一下,你想添加你最喜欢的网站 Opensource.com 进行监控。你只想知道主要标注文章何时包含 “python” 一词,并且通过 Matrix 收到通知。要做到这点,首先要使用“视觉选择器Visual Filter Selector”工具。(这需要连接 playwright 浏览器界面)。该工具会自动计算出针对内容的最佳 Xpath 或 CSS 过滤器。否则,你会从每天的页面更新中得到大量的噪音。接下来,访问“Filters & Triggers”标签。在 “CSS/JSON/XPATH Filter”区域(蓝色圆圈),你可以看到上一步自动生成的 CSS 过滤器。有几个有用的过滤器,比如“Remove elements”(适合移除嘈杂的元素)、“忽略文本Ignore text”、“触发/等待文本Trigger/wait for text”,和“如果文本匹配则阻止变化检测Block change-detection if text matches”(用于等待一些文本消失,如“售罄”)。在“触发/等待文本Trigger/wait for text”(红色圆圈)中,输入你想监测的关键词。(在这个例子中是 “python”)。最后一步是在“通知Notifications”选项卡中,你要在那里配置你想收到的通知。下面我使用邮箱、telegram添加了一个 通知目标。JSON API 监控案例找一个天气预报的 JSON API,请求是restfull 风格,city_code 为 9 位数字。只要拼接在地址 “http://t.weather.itboy.net/api/weather/city/+city_code” 后面即可。city_code 可以在这里查询: https://github.com/baichengzhou/weather.api/blob/master/src/main/resources/citycode-2019-08-23.json比如上海的 city_code 为 101020100所以在浏览器中输入 http://t.weather.itboy.net/api/weather/city/101020100 就能看到上海的天气信息将网页上的文本全部复制(Ctrl+A 然后 Ctrl+C),接着打开网页:https://jsonpath.com这个网址可用于 JSON 的语法测试将前面复制的内容粘贴到左侧的 Inputs,因为希望返回所有的数据,所以在 JSONPath Syntax 中输入了 $右侧的 Evaluation Results 不仅返回了所有的数据,并且对 JSON 数据进行了格式化处理,更易于阅读如果只是需要获取温度,可以在 JSONPath Syntax 中输入 $.data.wendu准备工作到这里就差不多了,返回到 Changedetection 新增一个监控,分别填入下面的内容后,点 Watch网址:http://t.weather.itboy.net/api/weather/city/101020100tag:天气在 CSS/JSON Filter 中输入 json:$.data.wendu,其中前缀 json: 是必须要的通知邮箱推送点右上角的 SETTINGS 是 default global settings,只需要在 Notification URL List 中设置通知方式Changedetection 采用了 apprise 项目来实现 通知 功能,可惜除了 邮件 ,老苏没找到手机上已经安装的应用所有支持的通知方式都在这里:https://github.com/caronc/apprise邮件发送的 URL 地址是
2024年07月30日
56 阅读
0 评论
0 点赞
2024-07-30
不绑信用卡,设置 Cloudflare 团队账户(Zero Trust)
绑定或不绑定信用卡,申请 Cloudflare Zero Trust (团队账户)免费科学上网Cloudflare 上网方式有三种。1、warp 账户,默认开通送 1G 流量。2、warp + 账户,相当于 warp pro 账户,通过关注 telegram 相关频道可获得 23.84PB 流量,这是多少?我给大家简单换算一下,1G 等于 1 千兆,1T 等于 1 千 G,1PG 等于 1 千 T)这些浏流量对于普通用户来说已经足足够用了,3、但还有比这更好的方案,那就是使用团队账户上网,如果开通了 teams 团队账户(Zero Trust 账户),就相当于获得了无限的流量。第一步:注册 Cloudflare 账户Cloudflare 注册对区域,邮箱没有要求,国内的 QQ 邮箱、163 邮箱都可注册 Cloudflare 账户,但得是真实的邮箱,能够接收验证邮件。1、打开 Cloudflare 官网:2、输入邮箱和密码3、验证邮箱:第二步:Zero Trust 设置1、登录 CF登录后,点击 Zero Trust 开始进入设置2、输入团队名称团队名称可任意起名,系统会验证是否重名。注册 Cloudflare 后第一次登陆,进入 Zero Trust 时会看到下面的页面。如果已经添加过团队名称会看到下面的页面3、选择免费计划(Free $0 / user / month)输入团队名称后,点击 Next 进入付费计划选择页面,选免费计划。4、选择继续支付(proceed to payment)这块不用担心,由于我们选择的是免费计划,输入信用卡信息点击支付时不会扣费。免费计划支持 50 个用户登陆访问。5、添加支付方式点 Add payment method 按钮进入支付信息填写页面下面的步骤需要绑定信用卡,想绑定信用卡的朋友接着往下看,不想绑定信用卡的朋友跳到【第五步】[](#89252ce1df494d9b88bd553d96488dc9 "6、添加支付信息")6、添加支付信息信用卡需使用可以支付外币的信用卡,比如带 VISA/MASTER 标识的信用卡卡。用户名称用汉语拼音填写,与信用卡一致,地址信息照实填写就行,也可以找一个虚拟地址。7、点下一步支付这里我们可以看到,费用是零。这里也可看到,团队用户计划中,可以允许 50 个用户登陆访问。第三步:设置客户端验证规则1、Settings 进入客户端设置点击 Settings,再点 WARP Client2、点击 Manage 进入客户端规则设置注意:只有绑定了支付信息的用户,才能看到 WARP Client 下的 Manage 按钮。3、点击 Add a rule 添加规则在这里添加的规则面对的是想登录的客户端用户4、设置用户登录规则Rule name:规则名称,名称可以任意填写Rule action:规则动作,保持默认(Allow)Selector:选择约束条件,这里选择以邮箱后缀最为约束条件(Emails ending in)Value:允许登录的邮箱后缀。如下图中添加了四个邮箱后缀,表示只有这四类邮箱才可以注册登录。Save:添加完成后,一定要记得保存第四步:下载客户端Cloudflare 支持五种客户端,macOS、windows、iOS、Android、Linux点 Downloads 进入客户端下载页面。也可打开 https://1.1.1.1 页面下载第五步:无卡注册步骤1、链接设备从支付信息填写页面退出后,点击 My Team 下的 Devices 调出 Connect a device 按钮。第一次进入时看不到 Connect a device 按钮,需按照下面方法操作。操作方法:先点击 My Team 下的 Users,再点击 Devices,如果没有出现,再次按顺序点 Users 和 Devices,直到 Devices 下出现 Connect a device 按钮,如下图所示。2、添加验证规则点击【 Connect a device 】打开添加登陆规则页面,点击【Create an enrollment policy】按钮3、输入登陆规则系统默认以邮箱后缀作为客户端的验证规则。这里填写需要验证的邮箱后缀(如:@hotmail.com),然后点 save 保存。4、获取团队名称点击页面中的 Windows 按钮,系统会自动打开一个页面,不用管。5、复制团队名称5.1、点击选项卡,返回之前的页面5.2、返回后会看到团队名称。复制团队名称,复制完成后这个页面不要关闭,一直保持这个状态。第六步:客户端设置1、安装客户端此处以 windwos 版安装为例。除了 Win 版,Cloudflare 还提供了 macOS、安卓版、苹果版、Linux 版。安装非常简单,双击运行安装文件,按照提示点击下一步完成安装即可。安装完成后,会在右下角看到一个类似云朵的图标。点击右下角的 Cloudflare 图标,按照提示点击下一步,并同意并接受协议。2、设置团队账户(Zero Trust)2.1、点击右下角 Cloadflare 图标,点击齿轮图标2.2、添加偏好设置2.3、点击账户→ 使用 Cloudflare Zero Trust 登陆2.4、点下一步并同意隐私条款2.5、输入团队名称并确定2.6、发送验证码输入要登陆的邮箱地址后,点击发送按钮(send me a code),系统会发一串验证码到这个邮箱。2.7、接受验证码并验证验证成功后点击右下角的 Cloadflare 图标,稍等片刻后,图标由红色的 warp + 改为蓝色的 Zero Trust,注册完成。点击按钮后显示已连接,表示已经成功联网,可以科学上网了。绑定信用卡与未绑定的不同绑定信用卡后,登陆账户可以随时编辑、修改、删除客户端登陆规则。未绑定信用卡的用户登陆后,无法看到已有的规则、虽然能添加规则,但无法修改和删除规则,添加规则操作不直观也不方便,操作相对繁琐。
2024年07月30日
162 阅读
0 评论
0 点赞
1
2
...
8