首页
关于我们
友链链接
壁纸下载
更多
统计中心
图床上传
Search
1
[Win DD包] wes7-x86-cn-精简,安装后仅占用1.55G存储空间
25,454 阅读
2
保姆级教程!甲骨文ARM DD成Debian10并升级内核成5.10
6,169 阅读
3
N1教程:Openwrt安装docker webui界面(基于flippy openwrt n1固件)
5,190 阅读
4
ZFAKA小店Docker版之 数据的备份和迁移
4,998 阅读
5
甲骨文oracle ARM 重装 Debian 10
4,674 阅读
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
登录
Search
标签搜索
vps
typecho
linux
bench
nginx
empirecms
lnmp
centos
cloudflare
openwrt
n1
301
qbittorrent
ssl
rclone
onedrive
google
storage
ssh
speedtest
V+变量
累计撰写
198
篇文章
累计收到
84
条评论
首页
栏目
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
页面
关于我们
友链链接
壁纸下载
统计中心
图床上传
搜索到
77
篇与
的结果
2025-01-01
只有一个域名能使用 Cloudflare 优选 IP/域名加速网站吗?
前言网上搜了不少使用 Cloudflare 优选 IP/域名 加速网站的教程,一般都是教你的怎么配置,看的也是云里雾里,索性去翻了下 Cloudflare for SaaS 的文档,官方有张图,看了按照我的理解大概描述下,看看能不能帮到新手,如果有错误希望大家指出下,最后讨论下一个域名来做优选可行吗?原理1. 最最原始的 DNS 记录假设我有个服务器,IP 地址是 1.1.1.1,我在服务器上部署了一个 vaultwarden 的服务,通过一通操作,我现在可以通过 1.1.1.1:8080 访问 vaultwarden 服务了。现在我不想通过 ip 和 端口来访问,所以我去买了个域名 test.dev,并且在服务区上安装了 nginx 作为反代,vaultwarden.test.dev 访问 8080 的服务,最重要的是:我要去 DNS 服务商配置我的 test.dev 域名的 DNS A 记录:vaultwarden.test.dev → 1.1.1.1现在我可以通过 vaultwarden.test.dev 来访问我的 vaultwarden 服务了,通过 ping vaultwarden.test.dev 可以看到 IP 是 1.1.1.12. 使用 Cloudflare 代理在网上冲浪了一段时间后, 听说网上一个大善人叫 Cloudflare,这个大善人可以给我的网站提供免费的 https 证书,可以隐藏我的真实 IP 1.1.1.1,防止有人 对我的服务器做一些不好的事,还可以在我的网站被攻击时提供防护,所以我把我的 test.dev 域名的 namespace server 改到了 cloudflare,并且设置了 DNS 记录:vaultwarden.test.dev → 1.1.1.1,最重要的是开启了黄色的小云朵:已代理现在我还是可以通过 vaultwarden.test.dev 来访问我的 vaultwarden 服务,通过 ping vaultwarden.test.dev 可以看到 IP 已经变为 172.67.158.38,实际上访问的逻辑已经变成了:vaultwarden.test.dev → Cloudflare → 1.1.1.1访问我的域名时访问的是 Cloudflare 的网络,由 Cloudflare 去跟我的服务器打交道。只是感觉加了代理之后访问速度变慢了亿点点,算了,好歹可以用吧,毕竟有免费的 https 证书。3. 使用 Cloudflare for SaaS突然有一天,我的 vaultwarden.test.dev 无法访问了,ping 一下,ping 不通,172.67.158.38 这个 IP 也 ping 不通,咋回事?网上搜了下,可能是最近网络波动,或者因为 xxx 原因,导致 IP 被墙了,咋办,这个 IP 是 Cloudflare 分配给我的,我可不可以去 cloudflare 看看能不能更换?不好意思,好像是不能的,那咋办?听说 visa.cn 也是用的 cloudflare,一直可以访问,而且他的访问速度比我的快多了,那能不能借用分配给 visa.cn 的 IP 去访问到 cloudflare,然后再让 cloudflare 去访问我的服务器?那就要解决两个问题:我访问 vaultwarden.test.dev 的时候要借用分配给 visa.cn 的 IP 去跟 cloudflare 连接与 cloudflare 连接后 cloudflare 知道我是谁,知道我的服务器是哪个,知道把我的请求转发到我的服务器上第一个问题,可以通过配置 DNS CNAME记录来解决:vaultwarden.test.dev → visa.cn现在访问 vaultwarden.test.dev 可以看到 error 1016 的错误。第二个问题,就需要通过 cloudflare for saas 来解决了。有两个点需要明确:请求过来了,要把请求转发到哪个服务器去?cloudflare 怎么知道 www.custom1.com / shop.domain.com / store.shop.com / shop2.ecommerce.com 这四个域名是我的,需要我来处理这几个域名的请求,毕竟 cloudflare 网络上有 N 多个域名解析?这两个点对应到 cloudflare,就是需要配置:添加回退源 - 告诉 cloudflare 你真实服务器地址,请求来了发到你的服务器自定义主机名 - 告诉 cloudflare 这几个域名需要帮你转发一下4. 等等,为什么要两个域名从上面的逻辑来说,理论上一个域名也可以啊,比如我设置了我的回退源:cdn.test.dev → 1.1.1.1添加自定义主机 vaultwarden.test.dev,vaultwarden.test.dev 的 DNS CNAME 到 visa.cn这样当我访问 vaultwarden.test.dev 时,借用 visa.cn 的 cloudflare IP 访问 cloudflare 网络,然后就会走回退源访问 1.1.1.1。吗?等等,真会走到回退源吗?cloudflare 查看 test.dev DNS 记录,明明有个 CNAME 记录是到 visa.cn 的,那就去 visa.cn 吧,所以,理论上就会一直是 error 1016 错误。这就是为啥要两个域名,通常来说用第二个域名 fallback.dev 来做回退源:当我访问 vaultwarden.test.dev 时,借用 visa.cn 的 cloudflare IP 访问 cloudflare 网络,这个时候会命中 fallback.dev 中添加的自定义主机,然后走回退源访问到 1.1.1.15. Cloudflare for SaaS 的配置明白上面的逻辑之后,配置就很简单了,四步:搞一个免费的域名 fallback.dev 做回退用,添加到 cloudfare,用 cloudflare 管理添加一个 A 记录 cnd.fallback.dev 指向到 你的服务区 IP 1.1.1.1,把这个记录添加到回退源添加一个自定义主机名 vaultwarden.test.dev设置 vaultwarden.test.dev DNS CNAME 到 visa.cn (优选域名)(或者 A 记录,优选 IP)6. 一个域名真的没办法做优选吗?我在使用 DNSPod 做测试的时候,发现实际上是可以实现的。域名 test.dev 托管在 cloudflare 上,子域名 vaultwarden.test.dev 添加到 DNSPOD,在 cloudflare 上添加子域的 NS 记录到 DNSPOD。其他的操作与两个域名一致,只是回退源也是使用 test.dev,最后再 DNS 添加一个记录:vaultwarden.test.dev CNAME cdn.test.dev
2025年01月01日
46 阅读
0 评论
0 点赞
2025-01-01
CloudFlare for SaaS 官方免费CNAME接入/自定义节点(CF自选IP)教程
CloudFlare for SaaS是什么?CloudFlare for SaaS(Software as a Service)是一种为 SaaS 应用程序提供安全和性能的云服务。CloudFlare for SaaS 提供了一种 CNAME 接入的方式,这使得用户可以使用自己的域名来访问 SaaS 应用程序。前言从2021年11月开始,CloudFlare禁用了Partner使用的zone_setAPI以避免滥用(因为该API接入不需要验证域名所有权),通过Partner实现CNAME接入的方式近乎落幕。2022 年 3 月份,CloudFlare 宣布更改了 CloudFlare for SaaS 的收费策略,每个账户可以有 100 个域名免费额度,我们所依赖这个功能所提供的免费额度可以实现免费 CNAME接入。使用CNAME接入后自定义节点就可以随便玩了。为什么使用自定义节点 IP 呢?CloudFlare 免费套餐节点比较少,且“鱼龙混杂”,对中国大陆的线路不友好,使用 CloudFlare 自定义节点 IP 的好处就是可以一定程度上缓解 CloudFlare 速度慢的问题。本文详细介绍了 CloudFlare for SaaS 的开通及如何使用自定义 IP 节点对三网线路进行优化,同时分享了一些 CloudFlare 对中国大陆三网线路较友好的IP段。前期准备:准备两个域名和一个paypal或一张信用卡。特别说明:一个域名的回源IP有且只能有一个。也就是说如果你服务器有a.com、b.com、c.com三个网站,你只要一个域名以NS的方式接入到cloudflare即可,但如果你这三个网站位于不同的服务器你就需要多个域名了。以这里为例的话就是指056056.xyz这样的域名你需要3个。056056.xyz 此域名要使用 NS 的方式接入用到 cloudflare。moeefl.com 要使用 CNAME 的域名,也就是要自定义 IP 的域名。一、定义一个回源域名之前使用过 CloudFlare Partner 应该都知道什么是回源域名,顾名思义用于找源站用的。登录 cloudflare 进入接入的域名 056056.xyz,点击左侧的DNS再点击记录,按下图设置一个“名称”为cname,“内容(即IP)”为你真实源站IP的A记录。小黄云要打开。注:图片中的8.8.8.8一定要改成你的服务器的真实IP。二、开通 CloudFlare for SaaS点击左侧的SSL/TLS 再点击自定义主机名,就可以看到一个启用 CloudFlare for SaaS的按钮。如下图所示:点击启用 CloudFlare for SaaS后选择一个付款方式,这里选择的是Paypal。如果你没有Paypal也可以使用信用卡。注:如果没有出现Paypal选项可以要使用科学上网的方式才会出Paypal选项。点击上图箭头指向的Paypal,在出现的窗口中填入你Paypal的用户名和密码,然后点击登入。在出现的窗口中点击同意并付款。注:这里只是一个认证,实际不会产生费用。请请放心使用。如果你使用的国内网络环境,可能会等待较长的时间(原因大家应该都知道),耐心等待即可。Paypal的登入方式最好不要换,容易风控。Paypal关联成功后会自动关闭并跳转到 Cloudflare 的付款页面,填写其中的名字、姓氏、国家/地区、邮政编码和帐户类型后点击确认。在弹出的页面中会有一些 CloudFlare for SaaS 的相关信息,如功能介绍和免费额度等。目前的政策是前100个免费,对于大部分人出说应该是足够用了。没问题的话就直接点击确认付款。最后在订阅完成的页面中点close,CloudFlare for SaaS 开通完成。你就可以愉快的玩耍了。三、添加回退源打开SSL/TLS下面的自定义主机名,增加一个回退源。在回退源中填写第一个步设置的域名 cname.056056.xyz。然后点击左侧的添加回退源。等待生效,大部分会在 1 分钟内生效。 如果1分钟过去后还没有生效,直接F5刷新页面。四、添加自定义主机在添加的回退源生效后点击页面中的添加自定义主机名,在页面中输入自定义主机名,并且选择最低TLS 版本以及证书验证方法,其中自定义主机名就是你要 CNAME 接入的域名。确认输入信息无误后点击添加自定义主机名。注:添加域名时可以是根域名也可以是二级域名,这里是以二级域名www.moeelf.com为例。添加完成后是待验证状态。点击刚刚添加的主机名,可以看到要求验证的证书验证TXT和主机名预验证TXT。按要求在你接入域名的DNS服务商中填写证书验证TXT和主机名预验证TXT。注:这里CF给出的验证TXT名称是完整域名的解析记录,所以在DNS服务商(这里是阿里云)中设置域名TXT记录时不要直接全部复制。这里要填入的应该是_cf-custom-hostname.www 和 _acme-challenge.www。目前可以自定义线路的DNS服务商有阿里云,DNSPOD,华为云,京东云等,喜欢那个就用那个。验证时长一般是10分钟内,不同的DNS服务器可能会有点区别,但区别不大。如果超过30分钟你可以就要检查一下是不是设置错误了。验证成功后如下图所示,证书状态和主机名状态下面都是有效。接下来你就可以在接入的域名(这里是moeelf.com)里面添加A记录或CNAME记录了。但更建议你使用A记录。注:CNAME记录的记录值你可以直接写第一步添加的cname.056056.xyz。大部分DNS服务商只允许CNAME和A记录启用一个,下图只是举例。好了,这时候你已经可以分线路来加速你的网站或者使用魔法了。请愉快的玩耍吧。CloudFlare使用的Anycast技术,所以也就没有什么固定的或者永久优质的IP的说法了。但是在路由的配置上,不同的IP段路由存在着些许的不同。找找还是可以找到适合你的IP来加速你的网站或者魔法的,下面介绍一些常用的节点以方便你能更快的找到一个称心如意的。CloudFlare的节点:CloudFlare 百度云合作 ip:162.159.208.4-162.159.208.103162.159.209.4-162.159.209.103162.159.210.4-162.159.210.103162.159.211.4-162.159.211.103官方列表:CloudFlare公开的节点各线路推荐列表:电信:推荐走圣何塞,例:104.16.160.* 或者上面的百度云合作 ip。移动:推荐走移动香港,例:172.64.32.、141.101.115. 或者 104.23.240.0-104.23.243.254。联通:没发布什么好线路,可走圣何塞。例:104.16.160. 或者 104.23.240.0-104.23.243.254。也可以试一下走亚特兰大 108.162.236.(日前不可用。) 。
2025年01月01日
44 阅读
0 评论
0 点赞
2025-01-01
Serverstaus改用Vnstat统计VPS流量,避免服务器重启引起统计丢失
接上篇 随时随地监控你的VPS状态——Serverstat部署折腾之路 后,很多站长碰到服务器重启导致统计数据丢失问题,本篇博文讲解如何使用vnstat统计VPS流量,避免重启带来的流量清零问题。1 vnstat简介vnstat 是Linux下一个流量统计工具,开启 vnstat 后,server 完全依赖客户机的 vnstat 数据来显示月流量和总流量,优点是重启不丢流量数据。2 更新软件包和安装vnstatapt update apt install -y vnstat安装完成后核实vnsta版本,确保为2.6以上vnstat --version # 确保版本 >= 2.63 修改/etc/vnstat.conf,下面这三个字段处要修改,有;注释的需要把;拿掉BandwidthDetection 0 # 禁用自动检测网络接口最大带宽 MaxBandwidth 0 # 解除带宽限制 Interface "" # 自动选择网口(默认非eth0需设置)4 重启vnstat并检验配置是否成功systemctl restart vnstat vnstat -m # 查看月流量统计 vnstat --json m # JSON格式查看月流量5 修改每台VPS的/etc/systemd/system/stat_client文件,在 ExecStart 末尾添加 -n 参数。ExecStart=/opt/ServerStatus/stat_client -a "http://ss.vvars.com:8080/report" -u Server-alice -p vvars.com -n6 加载修改文件并重启客户端systemctl daemon-reload systemctl restart stat_client7 到这里就配置成功了演示地址http://ss.5var.com
2025年01月01日
26 阅读
2 评论
0 点赞
2025-01-01
Typecho新增带emoji表情博文出现Database Query Error错误
刚才发布文章出现 Database Query Error,百度了问题,原因是 Typecho 在初始化数据库的时候,选用了 UTF-8 的编码,而在 MySQL 中,UTF-8 只支持最多 3 个字节,而 emoji 是 4 个字节,所以出现该问题。问题只要文章中添加了 emoij,保存文章就会显示 Database Query Error解决方案1 治标办法删除文章中的emoji表情,就可以成功发表了,简单粗暴却有效。2 治本办法:1)修改数据库 charset 为 utfmd4:alter table typecho_comments convert to character set utf8mb4 collate utf8mb4_unicode_ci; alter table typecho_contents convert to character set utf8mb4 collate utf8mb4_unicode_ci; alter table typecho_fields convert to character set utf8mb4 collate utf8mb4_unicode_ci; alter table typecho_metas convert to character set utf8mb4 collate utf8mb4_unicode_ci; alter table typecho_options convert to character set utf8mb4 collate utf8mb4_unicode_ci; alter table typecho_relationships convert to character set utf8mb4 collate utf8mb4_unicode_ci; alter table typecho_users convert to character set utf8mb4 collate utf8mb4_unicode_ci;2) 修改 Typecho 配置文件 config.inc.php 中数据库定义参数中的 charset 为 utf8mb4'charset' => 'utf8mb4',3 知识拓展1、MySQL在5.5.3之后增加了这个utf8mb4的编码,所以最低mysql版本支持版本为5.5.3+,若不是,请升级到较新版本;2、mb4就是most bytes 4的意思,可以用来兼容四字节的unicode,存储与获取数据的时候,不用再考虑表情字符的编码与解码问题。如果你要存互联网emoji表情,就需要utf8mb4,而不是utf-8;3、utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他转换;4、MySQL数据库的 “utf8”并不是真正概念里的 UTF-8,MySQL中的“utf8”编码只支持最大3字节每字符。真正的大家正在使用的UTF-8编码是应该能支持4字节每个字符,MySQL的开发者没有修复这个bug。他们在2010年增加了一个变通的方法:一个新的字符集“utf8mb4”,他们并没有对外公布(可能因为这个bug有点尴尬)。现在很多指南推荐用户使用“utf8”其实都错了;5、建议MySQL和MariaDB用户使用“utf8mb4”而不是“utf8”,毕竟现在是不管使用 Anroid 设备,还是 iOS 设备,如果插入包含有 emoji 表情符号的记录时就报错,还是很尴尬的;6、最重要一点,对数据库操作前,记得备份数据。
2025年01月01日
22 阅读
0 评论
0 点赞
2024-12-31
随时随地监控你的VPS状态——Serverstat部署折腾之路
作为一个代码小白,网上教程的学习比一般人慢,有的时候出差了排查原因,都不知道问题出在哪里,只能靠笨鸟勤飞一样的反复折腾,比如serverstat的部署,我就安装、卸载、更换其他版本、再安装、调试,直到最后终于成功,这里把折腾之路后的总结写下来,希望能帮到大家。感谢 zdz 大佬提供的脚本。 本站配置完成后的访问地址:https://ss.5var.com1 一键脚本安装利用一键脚本安装server_stat的服务器端和客户端;mkdir -p /opt/ServerStatus && cd /opt/ServerStatus wget --no-check-certificate -qO one-touch.sh 'https://raw.githubusercontent.com/zdz/ServerStatus-Rust/master/scripts/one-touch.sh' bash -ex one-touch.sh不出意外的话,输入http://IP地址:8080就可以访问了,说明配置成功,如果不行说明安装不成功,需要核实问题症结。2 修改配置文件修改/opt/ServerStatus/config.toml文件,下面几个位置注意:1)管理用户名,用于查看 /detail, /map,建议设置,保护你的服务器安全。# 管理员账号,不设置默认随机生成,用于查看 /detail, /map jwt_secret = "" # 修改这个, 使用 openssl rand -base64 16 生成 secret admin_user = "vvars" admin_pass = "vvars.com"2) 修改host参数下的name和password参数这里的值将来作为服务器端和客户端通信的密码,需要配置准确。hosts = [ {name = "Server-alice", password = "vvars.com", alias = "alice 1刀落地机", location = "hk", type = "kvm", labels = "os=debian;ndd=2025/1/28;spec=1C/1G/5G;"}, {name = "h2", password = "p2", alias = "n2", location = "de", type = "kvm", disabled = false}, {name = "h3", password = "p3", alias = "n3", location = "hk", type = "kvm", monthstart = 1}, {name = "h4", password = "p4", alias = "n4", location = "cn", type = "kvm", notify = true, labels = "ndd=2022/11/25;spec=2C/4G/60G;"}, ]3 修改提醒机器人,以TG为例tg-bot-token网上教程很多,建议自行搜索。获取频道ID的办法可以参考 获取Telegram私人电报频道的ID的两种办法[tgbot] # 开关 true 打开 enabled = true bot_token = "tg-bot-token" #这里的Token通过TG的botFather创建和获取 chat_id = "-100xxxxxxx" #新建群聊,获取群聊id # host 可用字段见 payload.rs 文件 HostStat 结构, {{host.xxx}} 为占位变量 # 例如 host.name 可替换为 host.alias,大家根据自己的喜好来编写通知消息 # {{ip_info.query}} 主机 ip, {{sys_info.host_name}} 主机 hostname,见 server_status.proto title = "警告<b>Server Status</b>" online_tpl = "{{config.title}} \n哈哈 {{host.location}} {{host.name}} 主机恢复上线啦" offline_tpl = "{{config.title}} \n不好 {{host.location}} {{host.name}} 主机已经掉线啦" # custom 模板置空则停用自定义告警,只保留上下线通知 custom_tpl = """ {% if host.memory_used / host.memory_total > 0.5 %} <pre>不好 {{host.name}} 主机内存使用率超50%, 当前{{ (100 * host.memory_used / host.memory_total) | round }}% </pre> {% endif %} {% if host.hdd_used / host.hdd_total > 0.5 %} <pre>不好 {{host.name}} 主机硬盘使用率超50%, 当前{{ (100 * host.hdd_used / host.hdd_total) | round }}% </pre> {% endif %} """ ###################### tgbot end ##########################3 修改 /etc/systemd/system/stat_client.service 文件将IP改为你服务器的IP或你的域名,注意这里的-u后的用户名、-p后面的密码,与上面config.toml中的name、password必须一致,否则会通讯不成功。ExecStart=/opt/ServerStatus/stat_client -a "http://ss.vvars.com:8080/report" -u Server-alice -p vvars.com4 测试配置文件是否正常systemctl daemon-reload #加载修改文件 ./stat_server -c config.toml -t #测试配置文件是否正常,没有问题的话会显示success字样 ./stat_server -c config.toml --notify-test #测试通知是否正常,正确的话会在相应的TG或者微信收到通知 ./stat_server -c config.toml #运行配置文件5 加载修改文件并重新启动服务器端和客户端systemctl daemon-reload #加载修改文件 systemctl restart stat_server #重启服务器端 systemctl restart stat_client #重启客户端没问题的话,再次访问http://IP:8080的话会更新配置信息。到这里单个VPS的监控就结束了。6 配置多个VPS,重复1-5步,确保每个都运行正常;7 配置总客户端,让所有VPS状态集中显示1) 修改集中显示VPS的config.toml确定要作为集中显示的VPS,修改该VPS的/opt/ServerStatus/config.toml,在host下面列出其他vps的对应配置信息hosts = [ {name = "alibaba-hk", password ="vvars.com", alias = "阿里云国际香港", location = "hk", type = "kvm", labels = "os=debian;ndd=2027/11/25;spec=1C/1G/30G;"}, {name = "Server-alice", password = "vvars.com", alias = "alice 1刀落地机", location = "hk", type = "kvm", labels = "os=debian;ndd=2025/1/28;spec=1C/1G/5G;"}, {name = "netcup", password = "vvars.com", alias = "Netcup德国主机VPS1000黑五款", location = "de", type = "kvm", labels = "os=debian;ndd=2025/1/28;spec=4C/8G/512G;"}, {name = "c1vhosting", password = "vvars.com", alias = "C1Vhosting灵车", location = "it", type = "kvm", labels = "os=debian;ndd=2025/11/28;spec=2C/4G/80G;"}, {name = "evhosting", password = "87887191", alias = "EVhostingh黑五大盘鸡", location = "nl", type = "kvm", labels = "os=debian;ndd=2025/1/26;spec=2C/4G/3000G;"}, ]修改完后加载修改文件并重新启动服务器端和客户端systemctl daemon-reload #加载修改文件 systemctl restart stat_server #重启服务器端 systemctl restart stat_client #重启客户端2)修改非集中显示的VPS的 /etc/systemd/system/stat_client.service 文件把其中的地址改为集中显示VPS的地址或域名,这一步很重要,用于把信息上报给集中显示客户端后显示ExecStart=/opt/ServerStatus/stat_client -a "http://ss.vvars.com:8080/report" -u Server-alice -p vvars.com修改完后加载修改文件并重新启动服务器端和客户端systemctl daemon-reload #加载修改文件 systemctl restart stat_server #重启服务器端 systemctl restart stat_client #重启客户端8 回到集中显示VPS的地址http://ss.vvars.com:8080,正常的话应该就能显示了9 最后整理了serverstat的常用命令#加载修改后的配置文件 systemctl daemon-reload # 启动 systemctl start stat_server systemctl start stat_client # 状态查看 systemctl status stat_server systemctl status stat_client # 使用以下命令开机自启 systemctl enable stat_server systemctl enable stat_client # 停止 systemctl stop stat_server systemctl stop stat_client
2024年12月31日
44 阅读
2 评论
0 点赞
1
...
3
4
5
...
16