阅读视图

发现新文章,点击刷新页面。

使用 Cold Turkey Blocker 高效限制应用与网站访问

天将降大任于斯人也,然我却沉迷于美色娱乐,未能苦练心志,增益我所不能,嗟叹,这道题太难了!我一直自制力薄弱,稍有不慎便会偏离目标,抖音一刷就停不下来那种。使用了本文所述的方案,应该会有所缓解…吧?

前两天看了一场PUBG的比赛,心血来潮又下载了 Steam 注册了账号,不论白天晚上一有空档便专注游戏,狠坐一天腰杆嘎嘎硬。就这样玩了两天下来似乎过足瘾了,又打算删除游戏。但我似乎意识到,这玩意儿即便删除了不久以后我又要下载回来,浪费时间不说还消耗网络伤害硬盘(50GB+),有没有什么方法或软件可以帮助我限制游戏时间,防止沉迷呢?

经过一番研究和对比,我最终选择了号称最强防沉迷软件的 Cold Turkey Blocker。它到底有多强?据说是一旦启用,无论你试图卸载或删除该软件、移除游戏,甚至重启电脑,都无法绕过它的限制——唯一的破解方法就是重装系统。

试用过程中,因为 Cold Turkey Blocker 不支持简体中文,我不小心勾选了“使用即锁屏”选项,结果导致白天完全无法使用电脑!幸好我还留了一丝“后路”——从微信输入法的剪切板里找回了密码的痕迹,晚上修改了规则。否则,我可能真的只能靠重装系统来解围了!

1. Cold Turkey Blocker 下载安装..... [ 阅读全文 ]

原文链接: https://www.shephe.com/post/using-cold-turkey-blocker-restrict-apps-websites/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

解锁 Win 新插件,使用 OneQuick 助你效率倍增!

OneQuick 是一款高效实用的 Windows 增强工具,提供快捷操作、手势控制和功能扩展,让你的电脑使用更快捷、更流畅。我在 2019 年的软件推荐里面曾推荐过这款小插件,不过由于当时该插件已年久失修,后来我便慢慢停用了。

前不久,我开始使用微软出品的实用工具集 PowerToys。虽然它功能丰富,但我仔细想了想,实际使用频率并不高。而且其中的图像调整器和重命名工具,即使不启用 PowerToysRun 主程序,也能通过右键菜单直接使用。因此,我平时很少将它保持开启状态。

相比之下,最近更新发布的 OneQuick 10 的功能虽然不如 PowerToys 多,但对我来说却更加实用。值得一提的是,作为一款个人开发的插件,OneQuick 的资源占用和稳定性甚至优于许多其他工具,我使用起来体验相当不错。

解锁 Win 新插件,使用 OneQuick 助你效率倍增![ 阅读全文 ]

原文链接: https://www.shephe.com/post/onequick/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

老张博客的2024

老张博客的2024 - 第1张图片

年终岁未的常规性动作吧,对一年来博客的文章和遇到的一些事情进行简单的小结与回顾。在2024全年,共计水了50篇“文章”,也正是保持着我这几年来“周更”的习惯。

浏览量超过2K的博文

没了,就两篇,真的只有两篇。在总结2023年博客的时候,《老张博客的2023 》里记录在2023年浏览量超过3K的博文6篇,而2024年超过2K才只有区区的两篇,脸红加流汗呀!流量下降的太明显。不过,对于流量,也不是那么太过于关注了,随之、任之吧。

评论数超过70的博文

2024年全年中,评论中超过70的博文共计13篇,当然,这评论的数量里至少有一半是我回复的,而在2023年全年超过40的才7篇。对于个人博客评论这块,我的观点还是多多评论、互评的,评论是交流的一个主要途径和手段。但是也有人的观点是开评论功能,是想让其他人有机会来“吹捧”。随他们怎么说吧。

2024年“大事件”

在2024年中,我认为对老张博客有影响有两件事,一是《由“软云事件”想到的! 》。有一说一,不吹不黑。期初买了软云的活动机,机器非常的稳定,性价比也非常的高,后来又买了一台常规机。某时软云服务商找我和他合作,免费让我使用机器,而我给他写挂个广告写篇软文,他同时还找了几位博主进行了这样的合作。哪知,最后跑路了!虽然这样的合作只是扶持、只是广告,但是无形当中也等于给他做了“担保人”。很多博友中看着我们的“担保”才去购买的。这样一来,无疑给我们自己的声誉带来了一定的影响。所以,切记找合作商也得要做好甄别!

而另外一件事就是《没啥文字功底却总想写点东西 》。对于“文字功底”这块,我确实是承认我的文字功底不行的,我还在多篇博文里提到。虽然文字功底不行,但是也没有影响我玩博客。直到某天来了一位“高人”对我的博客指指点点,指手画脚,那个时候我还是比较客气。把这件事写在了博客上,引发了广大博友的评论。评论的结果可想而知了,所有的博友一起开始喷这个家伙。最后的结果就是我的博客“被打”到关站。这件事当时对我的触动还是比较大的,曾一度想过关闭博客。不过想来,如果这事现在再发生一次,我会直接对那个家伙爆粗口,“你TM的算老几了,来我这指手画脚的!滚你妈一边去!老子爱怎么写怎么写,想怎么写怎么写!”

2025年“计划”

2025年没有计划,可能没有计划才是最好的计划吧!

对了,今天把“阅读”和“观影”从顶部导航菜单里删掉了。当初做这两个页面的时候,还拿过一段时间的kindle看了二三十本书,现在kindle吃灰了,又没有时间看电影,所以这两个页面也没有存在的必要了。

 

初探 PowerToys:一个微软家免费的实用工具集

前段时间,我在 Windows 系统中将 PDF 阅读器更换为 Sumatra PDF。这款阅读器小巧轻便,功能全面,完全满足了我的日常需求(更高级的功能则使用 Acrobat)。尽管如此,我仍有两点不太满意:其一是默认图标设计不够美观;其二是关闭最后一个标签后,主程序无法直接退出,而是显示默认界面,且无法进行相关设置。

你想啊,当你Ctrl + W关闭了树个标签以后,最后的主程序还得右上角鼠标点关闭,多不爽啊是吧。然后我想到了快捷键Alt + F4,但是F4这颗按键太远了,且已经被替换成了功能键。于是,我想到了按键映射。

经过一番探究,我最后用上了本文介绍的,微软家的实用工具集 PowerToys。这是微软为 Windows 系统开发的一套开源增强工具集,旨在提升用户的生产力和操作体验。该工具集包含多种实用工具,如窗口管理器 FancyZones、批量重命名工具、快捷键增强器、颜色选择器以及文件预览功能等,允许用户自定义和优化工作流程。

初探 PowerToys:一个微软家免费的实用工具集[ 阅读全文 ]

原文链接: https://www.shephe.com/post/microsoft-powertoys/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

cloudcone圣诞促销来了

cloudcone圣诞促销来了 - 第1张图片

不黑不吹,实话实说,这次活动的力度不是太大,和黑五在价格、配置上完全一样。所有配置CPU都给的多,而内存相对较小,属于“头重脚轻”的那种。

这几年来,老张博客一直放在cloudcone家的服务器上。通过这几年的使用,两句话说下使用感受。第一句是速度方面,中规中矩,访问网站的速度并不能像国内或是香港的那种线路那么快,但是打开网站的速度还是在可以接受的范围之内。第二句是稳定性方面,可以说cloudcone服务器是真的非常稳定,使用这几年,从来没有出现过意外宕机的情况。

之前也有人提到为什么我的cloudcone速度这么快,因为我在cloudcone稳定性和速度的基础上对博客进行了一些优化,非常的简单,具体可以看《将博客减法进行到底之如何精减WordPress插件》。通过简单的操作,保证可以做到我们的速度一样起飞!

下面是cloudcone圣诞活动配置,有兴趣的可以下手了!

CloudCone 2025年圣诞活动

美国西海岸洛杉矶 MultaCom 机房,千兆带宽,1 个 IPv4 地址,3 个 IPv6 地址,基于 KVM 虚拟,SSD Cached RAID 10 存储。

CPU 内存 硬盘(SSD) 流量 带宽 价格 购买地址
2核 1G 14G 3T 1Gbps $12.99/年 点击购买
3核 2G 26G 4T 1Gbps $21.99/年 点击购买
6核 4G 55G 6T 1Gbps $38.99/年 点击购买
10核 8G 111G 8T 1Gbps $72.99/年 点击购买

20.88刀的这款,放几个博客完全没有问题!10.99刀的,可以拿来科学!如果你的Docker容器多的,可以选择37.5刀的那款!

入手京造JZ990,体验机械键盘的快感!

入手京造JZ990,体验机械键盘的快感! - 第1张图片

说出来真的有些汗颜呀,自1997年读师范开始接触到电脑,算起来也是“快30年”了,却对键盘真的没有去研究。因为不打游戏,对键盘的唯一要求好像就是能无线就无线,那根线拖在桌子上真的不舒服。这么长的时间里,并没有想着去体验机械键盘的快乐,直到前几天被群里的一群大佬们安利,才想着去了解、折腾键盘。

蹬了张大妈两天时间,才知道原来键盘的学问有这么大。想要了解的,自己可以去找张大妈,这里不赘述。在大佬的安利之下,前两天入手了两台京造JZ990键盘,之所以买两台,就是因为以前没有体验过机械键盘,所以就分别买了线性轴和段落轴两种,想来体验体验。

入手京造JZ990,体验机械键盘的快感! - 第2张图片 入手京造JZ990,体验机械键盘的快感! - 第3张图片 拿到之后 立马拆箱,到底是机械键盘,真的重。来张全家福吧,送了拨轴拨帽器、USB转换器、线、说明书、键盘本体。送的工具还是比较简陋的。

入手京造JZ990,体验机械键盘的快感! - 第4张图片

拿到试试看的心理,把键帽折了几个,和之前有人在张大妈上发的图一不样。后来才知道,我买的是所谓的V2升级版。所谓的“升级”,其实应该是在“降级”,两个版本对比一下,就会发现键帽下面少了铜色的垫和字母标识。

入手京造JZ990,体验机械键盘的快感! - 第5张图片

入手京造JZ990,体验机械键盘的快感! - 第6张图片

另外一点,就是升经版的DEL键跑到上面去了,对于经常使用DEL键的我来说真的是非常的不习惯。后来找了京造的客服要了固件升级包进行了升级,升级之后DEL功能就跑下面来了,可想而知,这个固件还是老版本的。另外一点值得点赞的是通过驱动软件进行改键后,是直接存到键盘的记忆卡里,也就是不管你把键盘拿到任何一台电脑上使用,都可以起到作用。

入手京造JZ990,体验机械键盘的快感! - 第7张图片

其实,这款京造JZ990和贱驴RS2是同款键盘,早期版本标签显示制造商就是“马户公司”,而“升级版”就变成了“京东自有品牌创造设计”。所以早期京造客服直接给你的是贱驴的固件升级包和驱动软件。

入手京造JZ990,体验机械键盘的快感! - 第8张图片

现在来谈谈我对这两台键盘的使用感受!如果不把这两个键盘放在一起敲击,基本上不会感觉到有什么区别。

茶轴的声音小,敲击时感觉到有些绵柔有一种丝滑的感觉,而玫瑰拿铁轴的声音相对要大一起,敲击的时候感觉有点像我之前用过的质量较差的键盘,敲击的时候感觉有些卡顿不顺当,。两种键盘不放在一起充分比较,单独使用的时候根本没有这样的感觉。相对来说,我感觉茶轴手感好但是声音小;而玫瑰拿铁轴的声音大而好听,听起来特别有感觉,但是手感不是太好。细品起来,两个手感又差不多了。呵呵,但是两种空格键的敲击声音和手感都是很是太好,声音是那种铛铛的就像敲小木棍的那种感觉,非常的不好。可能是我的手感太“钝”,和广大的小测评文章写的手感不一样。不管怎么样,测评就是测评,每个人的喜好也不一样,自己感觉好就行。

一入键盘深似海呀!看到了网上很多有个性的机械键盘就想入!正如大大的小蜗牛所说,玩键盘和摄影、钓鱼是一样的,是个无底洞,可能我已经掉没洞底了!

 

 

 

再建“一个人的论坛”,体验折腾的快乐

再建“一个人的论坛”,体验折腾的快乐 - 第1张图片

2000年工作以后就接触网络,沉迷于中。2003开始搭建网站,最初以dedecms建的娱乐网。其中内容涉及笑话、美图、在线小游戏等,当然都是采集的。当QQ农场大火之后,想着如何来建QQ农场,记不得是一年了,发现DZ论坛里有QQ农场这款插件,便着手搭建论坛。那个时候QQ农场还需要收费,而我的论坛各种游戏全免费,吸引了很大一批用户。当时论坛在QQ农场、牧场以及无心宠物游戏积分与论坛积分互通的基础上,带动了论坛的发展,经过数年的发展,注册量达数万,日IP过千。另外一个论坛是和一位网友合开的“雷友论坛”,这位网友会编程,开发出了当时可以自动刷迅雷积分的一个软件。通过这款软件,论坛聚集了大量的注册用户,鼎盛时期的流量也是非常的可观。上面说的两个论坛后来因为QQ农场的普及、迅雷的没落等而慢慢失去人气。后来在“QQ时空”论坛做超版、也在本地的地方论坛做过管理。可以说,建论坛、管论坛的经历至少也有五六年的时间。 论坛创建容易,但是想要把论坛经营好真的是需要方法。论坛必须要有一个实质性的东西能吸引住大家。论坛建好之后,其实只是做好了一个框架,坛主得要给论坛以灵魂,用户再给论坛注以血肉,这样论坛才会像一个活生生的人呈现在你面前。一个论坛的发展,你必须要有一个“亮点”、要有一个发展的方向,用亮点来吸引人,在你的方向上去发展。也就是说,用亮点来引流。比如我前面说的两个论坛,就是靠免费的QQ农场和迅雷积分这两个亮点来吸引流量。

每个人都是有“虚荣心”和“荣誉感”,应该以这个为契机来让用户参与进行、互动起来。泡论坛和“砍传奇”是一样的,砍传奇是通过砍小怪升级、打BOSS爆好装备,而泡论坛就想过通过发帖来提高等级、通过发优质帖等来获取勋章等。这就是为什么有很多大型的论坛UID、勋章、特殊会员组等能卖到好几百甚至几千块。

对于建论坛这块,我明明知道自己拿不出来什么东西来吸引人,但还是去折腾了,只是想体验下折腾的快乐罢了。前两年经常泡“非主流论坛”,知道非主流论坛是用“修罗”程序后,就着手自己折腾了一个。花了很大的精力在上面,折腾了有两三个月,当然也花了不少钱买了主题和一些插件。对于“修罗”论坛,作者在好多年前就不更新了,导致PHP版本还停留在7.3,另外就是一些好用的插件基本上都收费,找插件花了大量的时间,折腾折腾也就没有热度了。

这段时间经常泡nodeloc论坛,又开始折腾Flarum了。花了一个星期这样的时间,我的“一个人的论坛”功能就初步建成了,https://bbs.laozhang.org。用修罗折腾两三个月,而用Flarum只折腾了一个多星期,这应该利益于Flarum知名度要大、各类插件丰富;另外就是有一群小伙伴,比如https://sx.sd/的热心帮忙与指导;当然,最后还是利益于AI,遇到很多问题,通过AI就能够在较短的时间内完美的解决。

一个人的论坛建好了,Flarum后台也熟悉了,各种插件的功能也了解了,那么接下来就是吃灰了!明知建了论坛没有人气,但是还是折腾了,就是想检验下Flarum、检验下折腾的快乐罢了!

Syncthing多端同步神器win版SyncTrayzor安装及升级内核方法

Syncthing多端同步神器win版SyncTrayzor安装及升级内核方法 - 第1张图片

我在使用Obsidian笔记软件折腾文件同步的时候遇到了多端同步神器Syncthing,在《Obsidian多端同步终极大法Syncthing、备份终极大法Kopia》只是简单的提及一下,至于安装、使用方法并没有过多的去阐述,毕竟官方文档介绍的非常的清楚。我使用Syncthing网络环境是这样的,在办公室的服务器上安装了Docker版的Syncthing,而在家里台式机、办公室台式机、笔记本上则是安装了有GUI界面的SyncTrayzor,在win环境下有系统托盘图标,使用非常的方便。

SyncTrayzor官方文档也有推荐,详细请看官文档https://docs.syncthing.net/users/contrib.html,呵呵,其实也就是一句话介绍。SyncTrayzor的项目地址在https://github.com/canton7/SyncTrayzor,细心的朋友应该会发现,SyncTrayzor最新1.1.29版还是2021年8月份发布的,由于长时间项目没有更新,导致Syncthing从1.28.0升级到1.28.1时不能自动更新。这里老张告诉大家如何在Syncthing更新上避坑,毕竟因为这个升级,周六折腾了半天的时间。

SyncTrayzor版本选择

SyncTrayzor版本我们选择绿色解压版,即SyncTrayzorPortable-x64.zip或是SyncTrayzorPortable-x86.zip,这两个版本亲测在win11上均可完美运行,不要下载安装版,安装版手动更新Syncthing无效。

Syncthing多端同步神器win版SyncTrayzor安装及升级内核方法 - 第2张图片

更新Syncthing

到syncthing的项目地址https://github.com/syncthing/syncthing中下载最新版1.28.1,我们选择syncthing-windows-386-v1.28.1.zip这个版本,解压后将所有文件复制到SyncTrayzor目录的data文件夹下即可。OK,完成升级!SyncTrayzor的安装版没有data目录,即使把升级文件复制到根目录也不成功。

其他推荐syncthingtray

昨天折腾的时候又发现一款Syncthing的win版项目syncthingtray,这个项目更新的更是比较频繁,也安装试用了,但是GUI真的不是太喜欢!有兴趣的可以试试!

使用避坑

在同步文件设置的时候,文件夹ID不要设置为sync。昨天在折腾的时候我无意将文件夹ID设置成了sync,结果发现“全局状态”的文件及文件夹数量是实际数量的两倍,同步进度条只能到50%。(实际是同步完了)

解决罗技 G304 鼠标按键连点问题,续命成功!

往前翻了几下,我这台罗技 G304 鼠标是 2021 年配台式机时从咸鱼购入的,当时花了一百多买的“仅拆封”二手机器。上手后完全颠覆了我对无线鼠标的刻板印象:G304 响应速度极快,用来玩 FPS 游戏毫无压力。不仔细对比的话,甚至可以说性能完全不输有线鼠标。

然而,用了一段时间后,这台鼠标也不出意外地出现了“通病”:左键偶尔会连点双击。每次遇到这种情况,我都会用力敲击几下,结果问题竟然会暂时缓解——所谓大力出奇迹!就这样,这台 G304 在“击打修复”的神操作下,稳定地陪伴我到了现在。其间,它经历了无数“灾难性”场景:从一两米高处摔下无数次,变成我儿子的玩具,甚至当过他的磨牙棒……但它依然坚挺,实在是又耐用又抗揍。

不过,由于它被啃了几口,底部的胶垫损坏了,导致滑动变得不那么顺畅。有一次偶然看到有人卖鼠标胶垫,我花两块钱买了一套贴上,结果滑动手感瞬间恢复到了刚买时的状态——那种熟悉的流畅感,又回来了!

解决罗技 G304 鼠标按键连点问题,续命成功![ 阅读全文 ]

原文链接: https://www.shephe.com/post/g304-replace-micro-switch/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

零基础 WordPress 网站建设全攻略:域名注册、环境搭建及内容创作(2024.11)

本零基础 WordPress 网站建设教程涉及内容非常广泛,将从一个小白的视角(老鸟&大神请点右上角)浅显地介绍有关建设网站的方方面面,包括但不限于:域名注册、服务器搭建、WP 建站、内容创作、网络营销等,总归一句话:WordPress 网站建设看完这篇就够了。

就像你一样,博主曾经也是一个对网站建设一无所知的小白,也是经过了无数的挫折和错误才积累了一些经验和见解。这篇文章的目的就是为了帮助你少走弯路,相对简单、直接而全面地学习如何建设一个 WordPress 网站。考虑到你可能是从零开始,文章里所使用的技术和语言尽可能地通俗易懂,倘若你对以下内容有任何疑问也欢迎在评论区留言,Kevin 将会第一时间为你解答。那么,让我们开始吧!

0. 为什么要建设网站?该如何开始

你为什么要建设一个网站呢?请认真思考这个问题,是为了向大家推广你的产品?是对外发布和展示信息?是想建设一个漂亮的页面展示作品?还是说见了别人有属于自己的网站,觉得很酷,想自己也想搞一个…这个问题你必须要明确。

笔者第一次做网站是在十一年前,那会儿我临近大学毕业,可能是看了某个帖子突然就发现做网站似乎也不那么难,于是对此一窍不通的我开始从零开始学习做网站了。得亏我那会儿年轻学习能力强,能熬夜,所以即便走了不少弯路,最终也还是能把小站做得像模像样,当时好像有人愿意出一点钱买那个小破站…???

..... [ 阅读全文 ]

原文链接: https://www.shephe.com/tutorial/wordpress-website-building/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

显示器检测应从哪些方面入手,有哪些检测点?

随着显示器应用的多样化,尤其在专业设计、摄影等领域,对显示效果的要求日益提高。本文列出了检测显示器各方面性能的关键点,合理选购和检测调教显示器可以确保你获得最佳使用体验。

为什么会有这篇文章呢?一则是因为我这边最近新增加了个在线显示器检测的小工具,二则是我觉得自己用的 Dell 2720QM 显示器名不副实,不管是明暗灰度级和色准都和理想有一定差距,每次在上面弄好的照片倒在 iPhone 上都很不一样!现在对它都没信心了,好想弄个 Mac 体验一波啊,奈何钱包不允许!

以上在线屏幕测试工具帮助用户检测显示器性能,包括坏点、亮度不均、模拟信号干扰等问题。通过纯色、漏光、对比度和呼吸效应等..... [ 阅读全文 ]


原文链接: https://www.shephe.com/post/%e5%9c%a8%e7%ba%bf%e6%98%be%e7%a4%ba%e5%99%a8%e6%a3%80%e6%b5%8b/
版权声明: Kevin's Space 版权所有,转载请用明链标明本文地址
本站相关: 随机文章 | 站长微博 | 关于本站 | 联系站长 | 捐助作者

利用雷池WAF,把博客“搬回家”!

利用雷池WAF,把博客“搬回家”! - 第1张图片 这几天在折腾雷池WAF,其实还是很好折腾的。我在《把服务器“藏”起来,让网站快起来!》可能说的不是太直接了当,后来又重新上了一张图,这样看起来更加一目了然。当然,还得要说下硬件环境,就是从海鲜上花了三四十块钱买了阿里云香港轻量24元每月的那款VPS安装雷池作为前端,而后端同样需要采用香港的VPS,这样速度才可以真正快起来。 利用雷池WAF,把博客“搬回家”! - 第2张图片今天就来折腾折腾怎么利用雷池WAF,把博客放在家里的服务器上。

首先介绍下我的硬件环境,家里一台J4125配置了16G内存、1T固态硬盘、4T机械硬盘,这台做成了all in one。ESXI虚拟机做底层,虚拟了爱快做为主路由拨号、Op旁路由、黑群晖,前几天又才折腾了一个debian安装了宝塔准备放网站。网络环境同家里500M电信,上行是40M、公网IP。而外部网络环境就是从海鲜上花了三四十块钱收的阿里云香港轻量24块钱每月的那一款。首先来上个图吧!

利用雷池WAF,把博客“搬回家”! - 第3张图片 博友们访问博客首先向安装了雷池WAF阿里云香港轻量发送请求,由雷池反代后再直接访问了家里的虚拟机上的博客。是的,路线是绕到香港去了,但是这条路线是优质线路,速度方面并没有感觉到慢。下面来说说设置方法吧!

设置动态域名解析、端口映射

家里有公网IP,但是是动态的,每次重启光猫后IP就会变化。我这里是从爱快上设置了动态域名解析,网上教程很多,不再赘述。把相关服务的端口必须要映射出去,这个也是在爱快的操作。

设置域名解析

网站的域名解析IP设置为安装雷池WAF的那台香港轻量。

雷池WAF设置

首先申请证书,傻瓜化,会点鼠标就行;然后就是添加站点。

利用雷池WAF,把博客“搬回家”! - 第4张图片

域名填写你网站的域名;证书选择你刚才申请的证书;上游服务器填写你动态域名解析的那个域名+网站映射出来的端口,如:http://xxx.laozhang.org:5425/

完成以上操作后,你就可以不需要加端口号直接使用域名访问家里虚拟机上的网站了!怎么样,即没有端口号、速度也不慢、还有雷池WAF安全保护,不是美滋滋!

 

 

把服务器“藏”起来,让网站快起来!

把服务器“藏”起来,让网站快起来! - 第1张图片

网站给用户最好的体检就是速度要快,想要网站速度要快,可以把域名备案选国内的服务服务器。但是大家都知道域名备案后把网站放在国内后续会有很多问题。所以很大一部分人就干脆放弃了速度而选择把服务器放在海外。把服务器放在海外,也可以选择对大陆优化的线路,但是这样的线路成本是非常的高。

阿里云香港轻量,那个速度真的是杠杠的,谁用谁知道。但是,24元每月的那款配置只有2C1G的,说真的1G内存真的有点太小了。34块钱每月的配置是2C2G,这款拿来做站还不错,一年408块钱虽然可以接受但是感觉还是有点高。最为重要的一点就是听不少人说阿里云香港轻量虽然线路非常的好,硬件性能却非常的拉,安装个Docker都会把CPU给干爆了。阿里云发放的学生300元优惠卷,用这个卷可以买到一年的2C1G的那一款香港轻量,海鲜上这个卷最初卖30块钱,后来9月中旬新卷被阿里指定商品后老卷涨到了70元,也就是说70块钱可以搞到阿里云香港轻量2C1G款一年时间。

那怎么样花最少的钱让网站的速度飞起来呢,这里老张来谈一谈怎么样花最少的钱让网站的速度最大化。请出今天的主角,雷池WAF。

雷池WAF:网站防护软件,它本质是一个反向代理,架设在网站前面,可以灵活设定各种规则,对所有请求进行过滤,不让黑客"越雷池半步"。它底层基于 Nginx,自带图形操作界面,简单好用。它的核心是智能语义分析算法,用来判断可疑请求,相当于一层自定义的软件防火墙,它在 GitHub 已经收获了12.5K star,目前是全球排名第一的开源 WAF 项目。它可以自己架设,很适合个人和小企业使用。如果你需要防护暴露在公网的 Web 服务器,不妨用它试试看。

目前我准备的方案是阿里云香港轻量作为前端,安装雷池WAF;后端采用HH家的香港性能机(去年黑五推出的一款2刀一个月可以搞到2C6G的香港VPS。),安装宝塔做网站。通过雷池WAF,把阿里香港轻量和HH香港性能机组合起来,既有了HH机器的性能又有了阿里香港轻量的速度,同时还多了一层安全保护。至于花费嘛,和34元每月的阿里香港轻量差不多,但是性能得到了提长、防护上有了保障。

把服务器“藏”起来,让网站快起来! - 第2张图片

雷池的安装、设置非常的简单,不做赘述。这里给大家避一个坑,我在把甲骨文新加坡VPS的两个小破站做雷池WAF反代的时候,出现了一个问题,只要通过雷池反代,wordpress的CSS文件就加载不出来,。AI给出的解释如下:

在使用雷池进行前端代理和后端反向代理时,老张遇到了WordPress样式丢失和后台无法访问的问题。初步分析认为是SSL跳转的问题,但检查后发现实际上宝塔配置没有问题。更深入的分析显示,网站在反向代理期间,由于回源使用HTTP协议,导致WordPress误认为站点也是HTTP,从而加载了错误的资源(CSS、JS等),最终导致样式丢失和重定向过多的错误。

为了解决这一问题,建议采取以下步骤:

  1. 确保前端使用HTTPS,回源采用HTTP:这样可以利用Cloudflare(CF)的证书,免去直接在源服务器上处理SSL证书的烦恼,简化维护和更新。
  2. 更新WordPress配置:在wp-settings.php文件中添加$_SERVER['HTTPS'] = 'on';一行代码,以强制WordPress将网站协议识别为HTTPS,这样可以防止出现HTTP资源加载的问题。

通过以上方法,最终达到了正确加载资源并解决了访问问题,确保了WordPress的正常运行。

具体原因可以看NL论坛坛主的文章分析《WordPress 反代后,css丢失或者后台进不去的问题的解决》,解决的方法是编辑 wp-settings.php ,在 <? php 下增加一行

$_SERVER['HTTPS'] = 'on';

把服务器“藏”起来,让网站快起来! - 第3张图片

 

 

 

WordPress首页调用typecho方法!

Wordpress首页调用typecho方法! - 第1张图片

前段时间花了那么多的时间折腾了《WordPress首页调用memos方法!》后,怎么又来折腾Wordpress首页调用typecho呢!原因有这样的两点,首先memos的作者对memos的更新真的是太随意了,每次版本的升级,你会想不到他会把什么功能给删掉、或是更想不到把数据库的结构给改了、还有就是随意改变API的接口。也正因为他的随意,一部分人还保持在低版本来使用,另外一部分人就是直接弃用了,所以我想着说不定哪一天也会弃用memos。另外的一个原因就是除了老张博客之外,我还有一个老张随笔,一直保持每日一更新,字数都是在二百字,就像朋友圈一样,最初是用typecho程序,后来改用memos,目前那个typecho上面还放着一千两百多篇随笔。我想与其这样牵强的用着memos,不如退回来用typecho算了。

有了上面的想法后,就想着把我的wordpress和typecho来个“整合”,在wordpress调用typecho的首篇文章。有了上一次的折腾,这次算是轻车熟路了,前前后后的折腾有两个小时。通过这次的折腾,让我对AI又有了新的认识,上次我认为是“豆包最聪明”,结果经过这次的“折腾”发现把相同的问题多次的提问同一个AI,每次他给出的答案也是不一样的。单单就响应速度来说,官方的GPT最为快,所以这次代码就是借助官方GPT来完成的。话不多说,直接上代码吧!

忘了一个重要的事: typecho本身没有提供API接口服务,这里我找到一款插件,Restful,安装后直接启用就行,因为我是直接调用文章的,其他的API接口就被我给关了!

1.把下面的代码插入到主题文件的index.php合适位置。

<?php
$data = fetch_typecho_data();
if ($data):
?>
<div class="latest-update" style="background-color: #f8f8f8;">
<div class="latest-update-header">
<h2>最新动态</h2>
<span class="latest-update-time"><?php echo esc_html($data['time_content']); ?></span>
</div>
<div class="latest-update-divider"></div>
<div class="latest-update-content"><?php echo esc_html($data['content']); ?></div>
<div class="latest-update-images">
<?php foreach ($data['image_content'] as $img_url): ?>
<a href="<?php echo esc_url($img_url); ?>" data-lightbox="latest-update-gallery">
<img src="<?php echo esc_url($img_url); ?>" alt="Image">
</a>
<?php endforeach; ?>
</div>
<div class="latest-update-footer">
<span class="latest-update-tag"><?php echo esc_html($data['tag_content']); ?></span>
<a class="latest-update-link" href="<?php echo esc_url($data['link_content']); ?>" target="_blank">查看全文</a>
</div>
</div>
<?php endif; ?>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.11.4/js/lightbox-plus-jquery.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.11.4/css/lightbox.min.css">

2.把CSS样式代码放置到主题CSS定义设置里,当然也可以直接放到style.css中。


/* 首页调用typecho样式 */
.latest-update {
    width: calc(100% - 40px); /* 设置宽度为100%减去40px,确保有左右边距 */
    background-color: #f8f8f8 ; /* 强制设置背景颜色为浅灰色 */
    border: 1px solid #ddd; /* 添加1像素的灰色边框 */
    border-radius: 10px; /* 圆角边框,半径为10px */
    padding: 20px 20px 10px 20px; /* 内边距,上下10px,左右20px */
    margin: 20px 0; /* 外边距,上下20px,左右0 */
    text-align: left; /* 文本左对齐 */
    margin-top: -10px; /* 减少与顶部的距离为0 */
    margin-bottom: 30px; /* 增加与文章列表的距离为40px */
    margin-right: 20px; /* 设置右边距为20px */
}

.latest-update-header {
    display: flex; /* 使用弹性盒模型布局 */
    justify-content: space-between; /* 头部元素左右分散排列 */
    align-items: center; /* 垂直居中对齐 */
    margin-bottom: 10px; /* 头部与下方内容的外边距为10px */
}

.latest-update h2 {
    font-size: 15px; /* 标题字体大小为15px */
    margin: 0; /* 去除默认外边距 */
    padding-left: 0px; /* 左边填充为0 */
}

.latest-update-time {
    font-size: 14px; /* 时间字体大小为14px */
    color: #666; /* 时间文本颜色为中灰色 */
    margin-right: 0px; /* 右边距为0 */
}

.latest-update-divider {
    border-bottom: 1px solid #333; /* 添加底部边框,颜色为深灰色 */
    margin: 10px 0; /* 上下外边距为10px */
}

.latest-update-content {
    text-align: left; /* 内容文本左对齐 */
    line-height: 1.5; /* 行高设置为1.5倍 */
    margin: 10px 0; /* 上下外边距为10px */
}

.latest-update-images {
    text-align: left; /* 图片区域文本左对齐 */
    margin: 10px 0; /* 上下外边距为10px */
}

.latest-update-images img {
    width: 100px; /* 图片宽度为80px */
    height: 75px; /* 图片高度为80px */
    object-fit: cover; /* 图片覆盖方式,保持比例并裁剪 */
    border-radius: 8px; /* 图片圆角,半径为8px */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 1); /* 添加阴影效果 */
    margin: 3px; /* 图片外边距为5px */
    transition: transform 0.3s, opacity 0.3s; /* 添加平滑过渡效果 */
}

.latest-update-images img:hover {
    transform: scale(1.1); /* 鼠标悬停时放大10% */
    opacity: 0.9; /* 鼠标悬停时透明度降低到0.9 */
}

.latest-update-footer {
    display: flex; /* 使用弹性盒模型布局 */
    justify-content: space-between; /* 底部元素左右分散排列 */
    align-items: center; /* 垂直居中对齐 */
    margin-top: 10px; /* 底部与上方内容的外边距为10px */
    padding-top: 10px; /* 上内边距为10px */
    border-top: 1px solid #ddd; /* 添加顶部边框,颜色为浅灰色 */
}

.latest-update-tag {
    background-color: #e0e0e0; /* 标签背景颜色为淡灰色 */
    border-radius: 5px; /* 标签圆角,半径为5px */
    padding: 5px 10px; /* 内边距,上下5px,左右10px */
    font-size: 14px; /* 标签字体大小为14px */
}

.latest-update-link {
    text-decoration: none; /* 去除链接的下划线 */
    color: #0073aa; /* 设置链接颜色为蓝色 */
    font-size: 14px; /* 链接字体大小为14px */
}
/* 首面调用typecho结束 */

3.把下面代码插入到主题functions.php文件中。


//-------首页调用typehco代码-----开始
function fetch_typecho_data() {
    $api_url = "https://suibi.zhangbo.net/api/posts?pageSize=1";
    $response = wp_remote_get($api_url);
    if (is_wp_error($response)) {
        return;
    }
    $body = wp_remote_retrieve_body($response);
    $data = json_decode($body, true);

    if ($data['status'] !== 'success' || empty($data['data']['dataSet'])) {
        return;
    }

    $post = $data['data']['dataSet'][0];
    
    // 1. 链接内容
    $link_content = "https://suibi.zhangbo.net/archives/" . $post['cid'] . ".html";
    
    // 2. 标签内容
    $tag_content = "#" . $post['categories'][0]['name'];
    
    // 3. 时间内容
    $created_time = (int)$post['created'];
    $current_time = time();
    $time_diff = $current_time - $created_time;
    
    if ($time_diff < 3600) {
        $time_content = floor($time_diff / 60) . "分钟前";
    } elseif ($time_diff < 86400) {
        $time_content = floor($time_diff / 3600) . "小时前";
    } elseif ($time_diff < 2592000) {
        $time_content = floor($time_diff / 86400) . "天前";
    } else {
        $time_content = date("Y年m月d日", $created_time);
    }
    
    // 4. 摘要内容
    $digest = strip_tags($post['digest'], "");
    $content = mb_strlen($digest, 'UTF-8') <= 200 ? $digest : mb_substr($digest, 0, 200, 'UTF-8') . "......";
    
    // 5. 图片内容
    preg_match_all('/<img.*?src=["\'](.*?)["\'].*?>/i', $post['digest'], $matches);
    $image_content = $matches[1];

    return [
        'link_content' => $link_content,
        'tag_content' => $tag_content,
        'time_content' => $time_content,
        'content' => $content,
        'image_content' => $image_content
    ];
}

 

 

 

 

WordPress首页调用memos方法!

WordPress首页调用memos方法! - 第1张图片

老张一直想把wordpress和memos能整合在一起,前几天在段先生的博客上看到了教程,便死皮赖脸的问他方法,原来是AI搞定的。刚开始的时候是直接拿段先生的用,但是里面有一些达不到自己想要的效果。比如段先生是从memos的RSS文件里取数但,如果memo里有多篇图片的话,RSS只能输出一张链接地址,其他找不到。通过找木木大佬,用了他提供的《Memos API 非官方不完全说明》便可以解决。另外在CSS布局上也不是自己想要的效果,便想着自己也来让AI搞吧!

让AI帮你写代码,你必须要学会怎么样能更好的和AI对话,必须要有一点点的代码基础,才能把把问题问在点子上。我在把memos的API输出的数据模式先告诉AI,然后再提出自己的要求,要求如下:

我想在wordpress获取memos的api发布第一条动态内容,API的链接地址是https://zhangbo.net/api/v1/memo?creatorId=1&rowStatus=NORMAL&limit=1 ,内容格式如下:
按以下要求进行操作:
1.读取第一个"id"后面的数据,并形成“https://zhangbo.net/m/+“id后面的数据”” 做为链接,赋值给变量$link_content
2.读取"content"后面的数据,读取以#号开始、空格结束的内容,并在前面加#号后赋值给变量$tag_content。
3.读取"createdTs"后面的数值,转化为时间后与当前时间计算时间间隔。时间间隔为1小时内的,以时间间隔+“分钟前”赋值给$time_content;时间间隔为24小时内的,以时间间隔+“小时前”赋值给$time_content;时间间隔为30天内的,以时间间隔+“天之前”赋值给$time_content;时间间隔超过30天的,直接以“年月日”形式赋值给$time_content。
4.读取"content"后面的数据,排除“![]()”图片形式、排除#、#及空格前的内容后,赋值给$content。
5.读取"content"后面的数据,如果有“![]()”图片形式,将()内的图片链接赋值给$image_content;如果"externalLink": 后面有数据,赋值给$image_content;如果"filename"后面有数据,将以“https://zhangbo.net/o/r/+filename上第四行ID后的数值+"filename"的数据”赋值给$image_content。如果以上情况都存在,那将以数值组形式赋值。
以上生成的代码,将保存在wordpress的主题文件functions.php中以便调用。
按以下要求生成CSS代码
1.对于在首页展示的要求,在首页文章列表上方,与首页文章空两行
2.显示框宽度100%、背景灰色、四角椭圆。
3.第一个DIV展示框以"h2”格式展示“最新动态”四个字、靠左对齐、左边距空20px;务必同一行展示$time_content值,右居中对齐,右边距空20PX
4.第二DIV插入细实线、深灰色
5.第三DIV展示$content值
5.第四DIV展示$image_content值的缩略图,缩略图四角椭圆并有阴影,如果多图从左往右排列。并按确保引入 Lightbox.js,也写入到本代码中,达到点击放大效果
6.第五DIV靠左对齐展示$tag_content值,背景灰色并四角椭圆,靠右展示“点击评价”点击链接到$link_content。
再生成输出代码以便插入在首页文件index.php,以便在首页显示。/

我分别测试了官方GPT、三方GPT和豆包,结果是官方GPT直接来句“问题太复杂,请分类进行提问”,三方GPT给出的代码效果完全不对,而豆包给出的代码基本上达到要求。当然,还是由于自己的表述,导致代码在图片显示这块有些问题。今天中午利用几分钟时间,进行了修改,对获取图片链接地址重新让AI写,我是这样提问的:

我现在的要求是其他代码不需修改,只对获取图片链接重新按以下要求来修改
1.读取"content"后面的数据,如果有“![]()”图片形式,将()内的图片链接赋值给$image_content;
2.获取  "resourceList": []的中括号里数据,这是图片组,每组以{}进行区分,查询每个{}内的"externalLink",如果"externalLink": 后面有数据,赋值给$image_content;如果"externalLink"无数据,则以“https://zhangbo.net/o/r/+该图片id+"filename"的数据”赋值给$image_content。
如果以上情况都存在,那将以数值组形式赋值。

经过这样的修改,图片才得要正确显示。后来又陆陆续续的修改了CSS样式,最终达到目前的效果。

现在把相关代码贴给大家吧,需要的自取,不合自己要求的,也可以让AI帮你来修改。

1.把下面的代码插入到主题文件的index.php合适位置。

 <?php
$memoOutput = processMemoData();
if ($memoOutput) {
echo $memoOutput;
}
?>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.11.4/js/lightbox-plus-jquery.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.11.4/css/lightbox.min.css">/* Your code... */

2.把CSS样式代码放置到主题CSS定义设置里,当然也可以直接放到style.css中。


/* 首页调用memos效果---开始 */
/* 缩小与顶部距离,增加与首页文章列表距离 */
.memo-display {
    margin-top: 0px; /* 减少与顶部的距离 */
    margin-bottom: 40px; /* 增加与文章列表的距离 */
    margin-right: 40px; /* 设置右边距为20px */
    width: calc(100% - 40px); /* 计算宽度以适应右边距 */
    background-color: #f2f2f2;
    border-radius: 10px;
    padding: 20px;
    border: 1px solid #ccc; /* 添加细线边框,颜色为浅灰色 */
}


/* 第一个 DIV:展示“最新动态”和时间 */
.memo-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.memo-header h2 {
    margin-left: 0px;
}

.memo-header span {
    margin-right: 0px;
}

/* 第二 DIV:插入细实线、深灰色 */
.memo-divider {
    border-top: 1px solid #999;
    margin: 10px 0;
}

/* 第三 DIV:展示内容 */
.memo-content {
    margin-bottom: 10px;
    line-height: 1.5; /* 或者可以使用具体的像素值,如 1.5em 或 24px */
}
/* 第四 DIV:展示缩略图 */
.memo-images {
    display: flex;
    flex-wrap: wrap;
}

.memo-images img {
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    margin-right: 10px;
    cursor: pointer;
    transition: transform 0.3s ease; /* 添加过渡效果 */
}

.memo-images img:hover {
    transform: scale(1.1); /* 鼠标悬浮时放大 */
}

/* 第五 DIV:展示标签和链接 */
.memo-footer {
    display: flex;
    align-items: center;
    margin-top: 10px; /* 设置与上面容器的距离为 30px */
}

.memo-footer div:first-child {
    background-color: #9999;
    border-radius: 6px;
    padding: 5px 10px;
    margin-right: 10px;
}

.memo-footer a {
    text-decoration: none;
    margin-left: auto; /* 靠右对齐 */
    margin-right: 0px; /* 右边距 20px */
}
/* 首页调用memos效果---结束 */

3.把下面代码插入到主题functions.php文件中。

/* Your code... */
//-------首页调用memoe代码-----开始
function getTimeContent($createdTs) {
    $current_time = time();
    $time_diff = $current_time - $createdTs;
    static $cachedTimeContent = null;
    static $lastCreatedTs = null;
    if ($lastCreatedTs === $createdTs) {
        return $cachedTimeContent;
    }
    if ($time_diff  100) {
        $substr_content = mb_substr($content, 0, 100, 'UTF-8');
        $last_char = mb_substr($substr_content, -1, 1, 'UTF-8');
        $last_char_ascii = ord($last_char);
        while ($last_char_ascii  126) {
            $substr_content = mb_substr($substr_content, 0, -1, 'UTF-8');
            $last_char = mb_substr($substr_content, -1, 1, 'UTF-8');
            $last_char_ascii = ord($last_char);
        }
        $content = $substr_content. '......';
        $link_text = '查看原文';
    } else {
        $link_text = '点击评价';
    }

    $content_without_tags_and_images = preg_replace('/#.*? /', '', $content);
    $content_without_tags_and_images = preg_replace('/!\[.*?\]\(.*?\)/', '', $content_without_tags_and_images);
    $content = $content_without_tags_and_images;

    // 构建输出内容
    $output = '
'; $header = '

最新动态

'. $time_content. '
'; $divider = '
'; $contentDiv = '
'. $content. '
'; $imagesDiv = ''; if (!empty($image_content)) { $imagesDiv = '
'; foreach ($image_content as $image_link) { $imagesDiv.= 'Image'; } $imagesDiv.= '
'; } $footer = '
'. $tag_content. '
'. $link_text. '
'; $output.= $header. $divider. $contentDiv. $imagesDiv. $footer; $output.= '
'; return $output; }

OK,结束!折腾十几个小时,就是出了这篇教程!!

完美实现手机照片自动上传至NAS并同步到网盘!

完美实现手机照片自动上传至NAS并同步到网盘! - 第1张图片

昨天一天时间,博客群里都是在谈论NAS,这又把我折腾的心勾的痒痒。对于NAS,我一直的观点就是自己DIY不买成品,买成品的价格至少要贵上1倍。在2019年的时候就折腾过NAS,那个时候买的都是矿渣,先是买了蜗牛星际,后来《上车了!暴风播酷云二期“开包”记!》。为了折腾NAS,单独买了两块4T的红盘,但是,但是后来其中一块硬盘还没有到一年时间就挂掉了。虽然免费换了新,但是里面的数据没有了,还好里面存的都是一些电影而不是重要数据。至此,NAS会坏硬盘这个阴影一直存在脑子里。没多久,就把暴风二期给卖了。

昨天我说出我对NAS存在坏硬盘的阴影时,老刘说我这是因噎废食。想想也是,NAS上硬盘坏了的直接原因是硬盘本身的质量问题,而不能去怪Nas。那就把吃灰的NAS重新折腾起来吧。目前我的硬件环境是用的J4125小主机外拖一个硬盘盒,里面是拆机的硬盘1T和4T各一块,搞的all in one。选用ESXI做的底层,ikuai爱快做主路由拨号,openwrt做旁路由负责科学等,另外通过一键脚本安装了黑群晖DSM。J4125主机资源还没有用完,准备再搞个Debian来折腾。那个黑群晖自安装后就一直吃灰,后来干脆把电源都给关了,昨天晚上回到家,才连上ESXI给NAS开了机。

如何将手机里的照片自动上传到NAS,并自动同步到网盘呢?这里我们需要用到这样的两个套件Synology Photos和Cloud Sync,两个都是官方套件,直接安装即可。

完美实现手机照片自动上传至NAS并同步到网盘! - 第2张图片完美实现手机照片自动上传至NAS并同步到网盘! - 第3张图片

Synology Photos 是 Synology NAS(网络附加存储)设备上的一款强大的照片管理和共享应用程序。它集成了照片存储、管理、备份和分享等功能,旨在为用户提供一个安全、高效的照片管理解决方案。以下是一些 Synology Photos 的主要功能和特点:智能分类和搜索、多设备同步、分享功能、高效的备份解决方案、照片编辑。相册管理等。

Cloud Sync 是 Synology NAS 提供的一个功能,允许用户将本地 NAS 数据与云存储服务(如 Google Drive、Dropbox、OneDrive 等)进行同步。这个功能非常适合需要备份数据、实现数据冗余或在不同设备间访问文件的用户。以下是 Cloud Sync 的主要功能、使用场景以及设置步骤。主要功能:双向同步、单向同步、增量同步、自定义同步规则、版本控制、调度同步、文件过滤等。

手机上需要安装Photos这款APP,直接从群晖的官方网站下载。Photos这款APP是和群晖上Synology Photos是配套使用的,都是属于照片管理器。

具体使用方法不再多去赘述了,傻瓜式的安装、使用。简单原理就是通过手机Photos这款APP和群晖Synology Photos套件配合把手机照片自动上传至NAS,再通过Cloud Sync 自动同步到各大网盘等。今天早上测试了下,手机刚刚拍的照片,到百度网盘上就可以看到了,真的是实现了秒传。

这样,所拍摄的照片,手机→NAS→网盘,全自动化,再也不用担心硬盘坏掉了!

近期想搞个高配一点的小主机做个all in one,基本要求32G内存、2块4T硬盘、CPU嘛12300T或以上、多网口网卡等,要小,可以放在鞋柜里。大家有什么可以推荐的嘛!价位在3000以下!

 

 

 

写在老张博客十五周年

写在老张博客十五周年 - 第1张图片

真的没有刻意去记今天,只是今天偶尔看网站信息时,才注意到建站时间是2009年10月9日,算到今天,正好是十五周年。到我提笔止,老张博客十五年里,不包括本篇共发布了787篇文章。评论数为18412条,其中应该有一大半是我回复评论。浏览总次数为5230094次,乍看这523万浏览量蛮大的,其实这是长时间积累的,平均每天也不过千。

老张根据文章归档,来回忆下老张博客走过的十五年的路。其实老张建博客是在2008年,只不过那个时候对“数据安全”没有概念,搞个博客正常丢数据。目前的数据是从2009年10月9日一直使用到现在的,现在是每天做备份,生怕哪数把数据搞丢了。

2009.10-2010.7:摸索爬行期:

想不起来老张当初因为什么建博客了,根据2009年归档的所谓的文章来看,从2009年10月建站到2010年7月中旬,基本上是转载别人的文章或是自己简单发两句话。可能是前一年对写博客并没有什么经验,只是去折腾但并没有把折腾的过程记录下来。建站前一年,可以说是摸索爬行阶段。

2010.7-2011.4:辉煌成就期

从2010年7月28日《WordPress更换域名后所要注意的十件事》这篇文章开始,到2011年4月份,原创了大量Wordpress方面的教程,同时总结了SEO方面的技术经验文章。这一年时间里,是原创高质量文章最多的一年,很多篇教程当时被admin5等站长网站收录,当然也引来了很大的流量,可以说这一年是老张博客最为辉煌的一年。

2011.5-2018.9:歇菜苟活期

2011年5月份开始,歇菜了,这段时间应该去折腾易语言去了,因为出现了一些易语言方面的教程。也就是从那个时候开始,老张博客在“苟活期”,你说不更新吧,偶尔那么转载两篇文章,你说更新吧,一年也就是更新十来篇。老张博客的苟活期或是说“空白期”相当的长,从2011年5月一直持续到2018年9月,长达七年之久。

2018.10-今:平稳发展期

2018年10月份起,老张博客从技术型博客转到“技术生活类”博客后,才算是基本上稳定。也就是那这个时候开始,内容为记录一些自己折腾的过程,分享一些自己的生活。更新基本上算是有规律,达到每个月四五篇,一直保持到现在。也就是说,真正意义上的写博客只能算是2010年7月至2011年5月,以及2018年10月起到现在,满打满算,也就是6年时间。博客十五周年,而真正写博客也就是六年时间,也算是可悲哟。

博客大事件

结合着前段时间软云的跑路风波涉及的数据安全来讲,来说说老张博客这十五年来遇到了两件“大事件”。

第一件事就是2017年长时间不上博客,未能及时更新博客程序和各种插件,导致各项版本太旧,有黑客利用漏洞入侵了我的空间,所有网站文件全被挂马。这个技术方面的事自己是搞不来的,还是在“游子”的帮助下花了大量的时间才得以解决。

另外一件大事就是“游子失联”。游子,一个非常不错的空间商,他真的能和客户打成一片,包括我在内,他的长期客户非常多,我用他的空间有十余年时间。但是在2020年11月份,游子的所有服务器全部停机,而游子又联系不上。我在《历经一劫,博客重生!》详细介绍了整个事件的过程。好在后来在朋友的帮忙下,直接打款给IDC商后开通了一个季度的机器才把数据得以保存。对于游子的失联,我们所有群里客户并不是担心“赔偿问题”,而是考虑到游子的个人安危问题。有位客户离游子比较近,单独开车百余公里去找游子,功夫不负有心人,找到了游子的老婆。这时才知道,原来游子在给一家P2P公司做网络方面的技术顾问,最终这家公司资金断链而被起诉,被定性为诈骗,游子也被牵涉其中而被留置。到现在已经五年时间了,游子客户微信群一直还在,但是还没有游子的身影,不知道他过的怎么样了。

老张博客十五周年了,不管你的博客在大厂还是小厂,定期做数据备份,把数据牢牢的抓在自己手里,还会有下一个十五年!再下个十五年,无数个十五年。

Memos完美降级到Memos0.18.2版

Memos完美降级到Memos0.18.2版 - 第1张图片

前几天一直都在折腾Memos,原因就是我的Docker容器是利用《如何优雅的一键升级宝塔面板多个Docker容器》的watchtower项目,通过计划任务每周定时检测Docker版本并完成自动更新。所以我的所有Docker版本都是一直保持着最新。也就是这点,违背了“求稳不求新”的原则,导致出现了一些问题。最为严重是Memos,作者更新很随意导致新版本的数据库结构、API接口都发生了改变,与目前使用的“哔哔点啥”的memos页面出现不兼容。

国庆节前,折腾把《完美解决Memos页评论与博客哔哔页面评论互不显示问题。》的问题解决了,方法就是备份数据库文件后直接删除新版Memos容器,安装Memos0.18.2版老板容器,并恢复数据库文件。安装后并没有经过大久测试,结果新的问题出现了。降级后Memos不能发布内容了,乖乖,这可是个大问题。

经过分析,不能发布内容的原因就是新老版本的Memos的数据库结构发生了改变,那么解决的思路也就是把新版数据库数据结构修改为与memos0.18.2保持一致即可。

备份数据库、删除新版安装memos0.18.2版

我在《无需代码,宝塔面板Docker部署便签工具Memos》提到过,当初我们在部署Memos时,已经把Docker内的数据库文件memos_prod.db映射到服务器上,找到新版数据库文件下载到本地后,可以另存为其他名称后删除最新版本memos容器。这次我是直接使用代码安装的0.18.2版,代码如下:

docker run -d --init --name memos --publish 5230:5230 --volume /docker-data/memos/:/var/opt/memos ghcr.io/usememos/memos:0.18.2

利用Navicat Premium工具导出-修改-导入数据库文件

安装好0.18.2版之后,到/docker-data/memos/下同样把memos_prod.db文件下载到本地。

这个时候我们请出今天的主角,Navicat Premium,直接到官网下载即可,14天的试用时间,完全够你折腾了。利用Navicat Premium同时连接打开新、老数据库文件。

Memos完美降级到Memos0.18.2版 - 第2张图片

经过比较你就会发现新版数据库文件中表名为memo的字段比0.18.2版本多一列uid字段。第一思路就是在新版表memo的uid字段上直接右键点删除,结果报错,只能另寻思路,如果这一步哪位大神有什么方法,一定要分享出来,因为正面我的方法比较繁琐。

那简单方法行不通,只能通过繁琐的方法了,把数据库表的内容导出成可编辑的文件,在相应软件里把memos的uid字段删除后再导入0.18.2版的数据库。具体方法如下:

Memos完美降级到Memos0.18.2版 - 第3张图片

选中新版数据库memo表,选择工具-导出,这里我选择的是excel数据表(*.xls),导出后用ecxel打开你导出的表格,直接把uid这一列删除即可。注意,这个时候我们再连接0.18.2数据库的memo表,再选择工具导入,注意一定要选对文件类型把修改后的excel文件导入。这个时候,我们就完美地把memo这个表导入了。

其他表的内容按上步方法导出-修改-导入,其实也就是memo和表resource两个表需要删除uid字段,其他像标签、用户、用户设置、系统设置等表只需要把内容导出成excel文件后再直接导到0.18.2的数据库即可。这样就完成了所有的数据迁移工作。

停止容器,恢复数据,完美降级

在服务器上把Memos这个容器先停止,把0.18.2版数据库文件上传到你映射的目录,覆盖旧文件即可。再重新启动容器,OK,十分完美地把Memos0.22.2降到Memos0.18.2版。

经过这一周多时间的测试,再无任何问题,Memos降级完美完成!

完美解决Memos页评论与博客哔哔页面评论互不显示问题。

完美解决Memos页评论与博客哔哔页面评论互不显示问题。 - 第1张图片

暑假两个月放飞自我后,近段时间开始收心了,把精力从游戏上转回到博客。第一件事就是把博客的“哔哔点啥”网页布局进行了调整,把内容的标签设置与评论图标一行,这样看上去就顺眼多了。虽然只是一个小调整,但是苦于自己的代码小白,还是找了AI帮忙。

目前我的哔哔点啥页面还是用《巧搬空白Koobai大佬Memos页面,完美与博客整合。》,哔哔点啥页面的工作原理就是直接调用Memos数据。Memos前期版本没有原生评论,而新版本即使有评论在memos的数据库里并非单独列。为了能让在memos以及博客的哔哔点啥页面有评论能力,便把《Artalk评论嵌入Memos,完美接近朋友圈、微博!暨宝塔面板Docker部署artalk评论系统》。

后来随着memos版本的升级,出现了个问题,就是在Memos在直接评论的内容与直接在哔哔点啥上评论的内容相互不显示了。因为当时评论数比较少,也并没有在意,这个问题一直也就拖到了现在。既然已经收心想折腾博客,那就索性把这个BUG也给搞定吧。

Memos的作者更新真的是很随性的,各种功能随意增减,导致很多人说Memos只是个项目不是个产品。前期版本单篇Memos显示匹配的路径是序号,用域名+M+序号形式,比如https://memos.laozhang.org/m/423;而后期版本匹配显示的路径却是内容前几个字符编码,比如https://memos.laozhang.org/m/GR65Lmbquyb5QuVuZgj9G7(打不开了,因为我的版本降了)。正是因为这次的升级,而导致了上述的问题。

老孙的帮助下,通过修改哔哔点啥的JS文件,把 var memo_id = data[i].id;修改为 var memo_id = data[i].name; ,是可以正常显示了,但是又有一个小问题,就是评论通知邮件里的链接又不匹配了。

后来询问了木木大佬、koobai大佬,才知,最为稳定的memos版本是0.18版,那解决的方法就是“降级”了!

之前我习惯于在宝塔面板下部署各种Docker,当时我是用了《无需代码,宝塔面板Docker部署便签工具Memos》。现在想来,还是代码更为方便一些。降级之前必须要很把你原来映射出来的文件夹备份并下载下来,那是你Memos全部数据。然后删除目前的Memos项目及镜像,重新用代码安装0.18.1版即可。

docker run -d --init --name memos --publish 5230:5230 --volume ~/.memos/:/var/opt/memos ghcr.io/usememos/memos:0.18.1

正常使用的这些Docker,我们应该保持一个原则“求稳不求新”,为了能正常运行,还是用稳定版本的为好!

 

❌