首页
归档
留言
友链
广告合作
壁纸
更多
美女主播
Search
1
博瑞GE车机升级/降级
5,573 阅读
2
Mac打印机设置黑白打印
4,884 阅读
3
修改elementUI中el-table树形结构图标
4,861 阅读
4
Mac客户端添加腾讯企业邮箱方法
4,645 阅读
5
intelliJ Idea 2022.2.X破解
4,313 阅读
Java
HarmonyOS Next
Web前端
微信开发
开发辅助
App开发
数据库
随笔日记
登录
/
注册
Search
标签搜索
Spring Boot
Java
Spring Cloud
Mac
MyBatis
WordPress
Nacos
Spring Cloud Alibaba
MacOS
Mybatis-Plus
Typecho
jQuery
Java Script
asp.net
MySQL
IntelliJ IDEA
微信小程序
Sentinel
UniApp
asp.net core
Laughing
累计撰写
613
篇文章
累计收到
1,427
条评论
首页
栏目
Java
HarmonyOS Next
Web前端
微信开发
开发辅助
App开发
数据库
随笔日记
页面
归档
留言
友链
广告合作
壁纸
美女主播
搜索到
613
篇与
的结果
2025-03-27
RuoYi AI:一个全栈式 AI 开发平台
壹、简介RuoYi-AI是基于经典开源项目RuoYi深度扩展的AI开发平台,它不仅继承了RuoYi家族的高效开发特性,还支持对接OpenAI、C还GLM、讯飞星火等几十种大语言模型,实现了聊天对话、图像生成、语音克隆等前沿功能,成为开发者构建智能应用的“一站式”解决方案。贰、特色功能全套开源系统:提供完整的前端应用、后台管理以及小程序应用,全部开箱即用。基于MIT开源协议,自由度高,可灵活修改和分发代码。本地RAG方案:集成Milvus/Weaviate向量库、本地向量化模型、Ollama调用本地LLM,实现完全本地化RAG的高效检索与生成,保障数据隐私与性能。丰富插件功能:支持联网、SQL查询插件及Text2API插件,扩展系统能力与应用场景。内置SSE、websocket等网络协议,支持对接多种大语言模型,同时还集成了MidJourney和DALLE AI绘画功能强大的多媒体功能:支持AI翻译、PPT制作、语音克隆和翻唱等扩展功能:支持将大模型接入个人或企业微信支付功能:支持易支付、微信支付等多种支付方式三、开发部署3.1、环境要求JDK17MySQL 5.7或者 MySql 8.0Redis 5.X+Maven 3.8+NodeJS+(含pnpnm)3.2、后端安装3.2.1、Clone代码GiHub地址:https://github.com/ageerle/ruoyi-aiGitee地址:https://gitee.com/ageerle/ruoyi-ai3.2.2、Idea导入项目使用Idea导入项目并正确配置Maven,在application.yaml文件中修改数据库及Redis链接信息3.2.3、初始化数据库数据库初始化脚本位于script/sql/ruoyi-ai.sql。3.2.3、运行项目以上配置完成后,直接运行项目即可。3.3、安装管理端&客户端3.3.1、Clone代码3.3.1.1、管理端代码GiHub地址:https://github.com/ageerle/ruoyi-adminGitee地址:https://gitee.com/ageerle/ruoyi-admin3.3.1.1、客户端代码GiHub地址:https://github.com/ageerle/ruoyi-webGitee地址:https://gitee.com/ageerle/ruoyi-web3.3.2、安装依赖进入ruoyi-admin或者ruoyi-web,打开终端,执行pnpm install3.3.3、运行或打包项目运行项目:pnpm dev打包项目:pnpm build3.4、修改配置3.4.1、申请API KEYhttps://api.pandarobot.chat3.4.2、注册API KEY成功注册账号后点击添加令牌,参数可以全部默认,然后点击复制按钮可以获取API KEY3.4.3、进入后台管理配置默认账号为admin,默认密码为admin123进入运营管理-系统模型-新增模型,在请求密钥处填写上一步申请到的key信息
2025年03月27日
60 阅读
0 评论
0 点赞
2025-03-26
CentOS 7 安装各版本的Git
Git是当今最流行的分布式版本控制系统,广泛应用于软件开发中。CentOS 7上的Git版本太陈旧,在使用过程中会遇到一些版本问题,因此需要升级Git版本。事实上,CentOS系 统上各种软件版本都"巨陈旧",哎...先查看一下当前版本在终端输入git --version卸载旧版本依次执行sudo yum -y remove git sudo yum -y remove git-*获取需要的版本各版本的Git可以通过下面链接获取,我这里安装的是2.27.0版本,如果安装的其他版本,注意替换下面安装命令中的文件名。https://mirrors.edge.kernel.org/pub/software/scm/git/安装Git依次执行下面的命令cd /usr/local/src/ wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.27.0.tar.xz tar -xvf git-2.27.0.tar.xz cd git-2.27.0/ make prefix=/usr/local/git all make prefix=/usr/local/git install echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/profile source /etc/profile验证安装安装完成后在终端输入git --version,查看版本信息是否正确
2025年03月26日
91 阅读
0 评论
0 点赞
2025-03-25
OpenSSH升级到最新的OpenSSH_9.9p2版本
最近公司安全部门进行漏洞扫描,提示我名下服务器存在两个安全漏洞:OpenSSH安全漏洞(CVE-2025-26465 )及OpenSSH资源管理错误漏洞(CVE-2025-26466 ),要求将OpenSSH升级到OpenSSH_9.9p1或以上版本。目前OpenSSH最新版本是OpenSSH_9.9p2,所以这次升级我们也安装OpenSSH_9.9p2版本。本文主要记录一下本次升级的过程,方便后续查阅。查看已安装版本在终端输入ssh -V,查看已安装的版本信息可以看到目前我安装的版本是OpenSSH_7.4p1下载OpenSSH创建目录,存放安装包mkdir /root/openssh进入我们刚才创建的目录cd /root/openssh官网下载速度比较慢,我们可以使用阿里云镜像站下载,输入下面命令,下载wget https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.9p2.tar.gz安装OpenSSH解压我们下载的压缩文件并进入解压后的文件夹内tar -xzf openssh-9.9p2.tar.gz cd openssh-9.9p2依次执行下面命令进行编译安装./configure --prefix=/usr --sysconfdir=/etc/ssh --with-privsep-path=/var/lib/sshd make && sudo make install验证再次输入ssh -V,如果显示的是OpenSSH_9.9p2, OpenSSL 1.1.1 11 Sep 2018代表我们安装成功。遇到的问题OpenSSL版本过低编译安装的时候,提示下面的报错checking OpenSSL library version... configure: error: OpenSSL >= 1.1.1 required (have "100020bf (OpenSSL 1.0.2k-fips 26 Jan 2017)")这个是因为OpenSSH要求OpenSSL最低版本为1.1.1,我们需要升级OpenSSL版本。依次执行下面的命令,安装开发工具,确保你有开发工具集和依赖项sudo yum groupinstall -y "Development Tools" sudo yum install openssl-devel zlib-devel readline-devel sudo yum install -y wget sudo yum -y install gcc*卸载老版本的OpenSSLyum remove openssl安装OpenSSL的1.1.1版本github间歇性抽风,如果下载失败,可以尝试多次执行wget命令。wget https://github.com/openssl/openssl/releases/download/OpenSSL_1_1_1/openssl-1.1.1.tar.gz tar -xzf openssl-1.1.1.tar.gz cd openssl-1.1.1 ./config --prefix=/usr make && make install
2025年03月25日
109 阅读
0 评论
0 点赞
2025-03-23
防止Mac笔记本电脑在翻开屏幕盖或连接电源时开机
在翻开屏幕盖或接通电源时,搭载Apple芯片的Mac笔记本电脑会自动开机并启动。对于Mac OS Sequoia 15或更高版本,你可以更改这个行为,而不会影响使用键盘或触控板将Mac开机的功能。打开[终端]App,它位于[应用程序]文件夹的[实用工具]文件夹中。在[终端]中键入以下其中一个命令,然后按回车键:防止电脑在翻开屏幕盖或连接电源时启动:sudo nvram BootPreference=%00仅防止电脑在翻开屏幕盖时启动:sudo nvram BootPreference=%01仅防止电脑在连接电源时启动:sudo nvram BootPreference=%02在系统提示时,键入你的管理员密码([终端]不会显示键入的密码),然后按回车键。要撤销之前的命令,并重新启用在翻开屏幕盖或连接电源时自动启动,请在[终端]中输入sudo nvram -d BootPreference
2025年03月23日
106 阅读
0 评论
0 点赞
2025-03-23
Mac周边好物推荐
首先说明一下,本文不是广告贴,我只是结合自己日常使用过程中使用过的或者网友评价比较高的周边设备,本文推荐的东西,不对是否官方出品做区分,也不区分先后顺序,大家可以按需选择。{mtitle title="鼠标"/}大家都知道普通的蓝牙鼠标,在Mac OS会"发飘",如果你是使用有线鼠标,其实感觉大差不差的,如果你使用蓝牙鼠标的话,我觉得唯一能推荐的只有妙控鼠标,其他还没有发现一款能替代妙控鼠标的产品。妙控鼠标妙控鼠标是苹果官方出品的一款可充电、支持多短触控的无线鼠标,具有优化的底脚设计,让鼠标能在桌面上顺畅滑动。同时,多点触控表面让你可使用简单的手势进行各种操控,比如轻扫切换网页、滚动浏览文档等。因为是官方出品,所以在功能适配性上,能够完美兼容。妙控鼠标内置充电电池,每充满一次电可提供大约一个月甚至更长时间的电池续航。它开箱即可使用,并能自动与你的Mac配对。缺点就是价格较贵,官方售价699元,如果不追求蛮美,可以考虑某宝购买拆机件,大家300多块钱。{mtitle title="键盘"/}市面上专门针对Mac设计的键盘不是很多,如果希望功能上能尽量匹配Mac OS,推荐购买妙控键盘,如果比较中意机械键盘,可以考虑购买渴创的键盘,渴创的键盘专门针对Mac进行了优化,虽然渴创在国内的知名度不是很多,但是在国外还是很火的。妙控键盘带有触控ID的妙控键盘由苹果官方出品,所以在功能上比较强大,与Mac Book键盘类似,自带触控ID,所有功能键都能与Mac OS完美兼容,注重用户使用体验。除了Mac能够使用之外,iPad及iPhone设备使用体验也很好。当然价格也很苹果,不带小键盘的官方售价1049元,带小键盘的官方售价1249元。因为是苹果官方出品,所以对非苹果设备支持不好,如果是Mac及Windows都使用的用户,此键盘性价比就不是很高了。渴创K3渴创(Keychron)K3 是一款非常受欢迎的矮轴机械键盘,尤其适合Mac用户。它以其紧凑的设计、多设备兼容性以及出色的手感赢得了许多用户的青睐。可以购买keychron 渴创 K3 Pro或keychron 渴创 K3 Max。两款键盘我个人感觉功能类似,至于轴体、背光颜色等,大家可以根据自己需要选择,keychron提供了红轴、茶轴、青轴等不同选择,背光可以选择白光或者RGB。渴创K3提供了Mac及Windows两套键盘帽,默认的是Mac的,并且完美兼容Mac布局功能多媒体键。渴创K3的键盘还有一个好处,就是得益于其小巧的设计,渴创K3的键盘正好能覆盖Mac Book的键盘,这样技能使用键盘,也不会影响Mac Book触控板的使用。至于渴创(Keychron)K3的缺点,我觉得价格是一个方面,keychron 渴创 K3 Pro或keychron 渴创 K3 Max价格区间在400~600之间,虽然相对于妙控键盘便宜不少,但是总得而言价格也不是特别便宜。另外这个键盘电池容量较小,差不多两三天就得冲一次电。因为价格问题,我没有购买他的键盘,而是购买了京东京造K3 Max。京东京造K3 Max京东京造K3 Max 是京东京造与Keychron合作推出的一款机械键盘,实际就是Keychron K3贴牌货。它在 Keychron K3 的基础上进行了一些优化和改进,同时保持了 Keychron K3 的核心优势,比如超薄设计、多设备兼容性和 Mac 适配性。但是价格要便宜不少,算上国补后,只需要300块钱。因为本身就是Keychron,所以电池容量小的缺点,京东京造K3 Max也一样。另外一个缺点就是背光问题,我不知道Keychron是否有这个毛病,我买的是天青白颜色的,这款型号的,键盘是白色,键盘字母是灰色的,注意是灰色,不是黑色,所以即使白天,键盘上的字母显得也不那么清晰,因为京东京造K3 Max只有白色背光款,所以到了晚上,即使打开背光,键盘显示也十分不清晰,比较影响使用。{mtitle title="显示器"/}苹果一直以其出色的显示效果而著称,这也是很多创意专业人士和追求极致体验的用户选择苹果的原因,所以,在选择显示器时,最好需要支持苹果的Display P3色域,不然就无法体验到苹果优秀的显示效果。Apple Studio Display土豪用户闭眼入就可以了,除了价格贵,其他的都是优点。出色的显示效果(5K 分辨率、P3 广色域)、一体化设计(内置摄像头、麦克风、扬声器)、优秀的做工和设计、与 Mac 完美兼容、多种支架选择等。明基(BenQ)MA270U 27英寸4K苹果色这是我最近打算入手的一款显示器,明基(BenQ)MA270U几乎是专门为Mac用户设计的,其色彩调教以Mac为基准,4K的分辨率及Display P3色彩模式,屏幕可呈现趋近苹果原生色彩的表现,内置treVolo双音响,通过iKeyboard可体验原生操作,纳米雾面屏,搭载两个type-C接口,可分别实现90w及15w的输出功率。因为我目前还在观望是否购买,看JD上的图片,感觉显示器颜值上还是差点意思。另外就是显示器黑框也不算小。{mtitle title="拓展坞"/}目前我暂时没有扩展坞的需求,但是之前看中了一款,DOCKCASE带屏Type-C高速拓展坞,等后续如果买了的话再做介绍。{mtitle title="电脑支架"/}我个人用过普通可升降的支架、立式支架还有粘贴到电脑底部的mini支架,目前主要在使用的是立式支架。偶尔外出携带电脑的话,就把粘贴到电脑底部的mini支架支棱起来。立式支架立式支架的好处就是不占用桌面空间,坏处就是因为电脑需要关闭立起来,所以没法当成扩展屏幕使用了,这个看大家实际需求。可升降支架可升降支架的好处就是电脑屏幕为作为扩展屏幕使用,并且电脑屏幕可以按照需要升降,另外现在这种电脑支架一般也支持旋转了,所以使用起来还是比较便捷的,但是坏处就是比较占用桌面空间。mini支架这个其实也不能算是支架了,只是电脑底部一个增高垫。这种mini支架的好处就是方便,直接粘贴到电脑下面就是,外出携带电脑,直接展开,方便电脑散热。
2025年03月23日
76 阅读
0 评论
0 点赞
2025-03-22
从问界M9远程硬件升级剖析国产新能源电车的发展
今天看问界公众号推送了问界M9原厂硬件升级的通知,原文链接可以查看 https://mp.weixin.qq.com/s/oqpJ9NxjhDtz2qNVt-o3qQ 看完这篇文章感触还是比较深的,一款发布不到一年半的车辆,硬件竟然已经跟不上软件的发展,要想体验最新的功能,需要自己掏钱去升级硬件。大家都知道,车辆的特殊性,后期的任何改动,永远达不到工厂批量生产的工艺。首先我自己不是问界的车主,自己开的是一辆18款的博瑞GE 汽车,但是从自己自身的感受以及问界发布的通知,发表一下自己对国产汽车的一些“偏见”吧,大家看到了,全当茶余饭后的段子吧。看了一下通知,本次升级的车型是问界M9 2024款,然后我又去汽车之家查询了一下,这款车是2023年12月上市的,也就是本次升级距离车辆上市还不到一年半。记得前些年,吉利汽车旗下的极氪001也搞过一次免费硬件升级服务,免费给车主升级了8155芯片。虽然这些年国产车取得了显著的成绩,国产车的进步也是有目共睹,但是国产车一些槽点,感觉还是不吐不快。一、把汽车当成电子产品卖现在的国产车动辄几十万甚至上百万的售价,绝对不是万把块钱的手机、电脑能够对比的,除此之外,车首先是交通工具,核心应该是驾驶体验、安全性和可靠性,而不是沙发、冰箱和大彩电。国产车把车当数码产品卖,确实吸引了不少年轻消费者,但也暴露了很多问题。1.1、疯狂堆配置,实用性却跟不上现在很多国产车特别喜欢宣传“超大屏幕”、“智能语音”、“自动驾驶”之类的功能,搞得车里像个小型的科技展览馆。但问题是,很多功能实际用起来并不顺手,1.2、过度依赖“配置”,忽略了车的本质还记得当年小米所谓的配置秒杀苹果手机好几条街,但是直到今天也没有任何手机在流畅度、使用体验上能超越苹果手机的。现如今,国产车感觉又开始了当年的套路,一套空气悬架能把劳斯莱斯秒成渣渣,但是实际体验下来,开车还是像开船。二、吹牛逼的毛病一直改不了今天我的车是500w以内最好的汽车,明天他的车就是1000w以内最好的车;今天我的车过减速带平稳运行,迈巴赫摇头晃脑,明天我的车雪地平稳运行,迈巴赫就得失速,还得说迈巴赫很优秀了,大家不要嘲笑他。现在国产车特别是所谓的新势力,喜欢制造话题(黑红也是红),发明概念。你以为你能体验到香槟模式展示的平稳,实际买车了你才会发现,你连人家的条件都满足不了。三、要是没有合资车,国产车的价格能上天是的,我没有写错,你也没有看错。想想当年的国产手机,价格几乎没有超过3000的,你在看看现在的国产手机,华为最新发布的号称人人都能买得起的手机,手机仅仅7499元起。是不是感觉一样的剧情一样的套路,在合资车价格不断下探的今天,比亚迪、吉利、蔚来都发布了售价近百万的车。甚至蔚来汽车一直以价格高来标榜自己的豪华调性。试想一下,如果没有合资车,国产车究竟能卖到多少钱。四、更新换代太快,汽车像手机一样“过时”现在国产车的更新速度简直比手机还快,今天刚买的车,明天可能就出新款了。极氪汽车甚至出现了一年换三代的荒唐事情。很多新功能都是软件层面的升级,老车主却享受不到,一句硬件层面不支持,就把老车主背刺了。更离谱的是,有些品牌还会通过OTA(远程升级)偷偷限制老款车的性能,美其名曰为了车主的使用安全或者使用体验,说句不好听的,就是当初发布车辆的时候,为了数据好看,让车辆过载运行。五、相同车型换个名字接着割韭菜看看合资车甚至特斯拉,基本都是经典车型在升级,反观国产车,有几个超过5代的车型,基本上发布一款车,割完韭菜换个名字接着割。甚至出现了理想这种套娃的设计。六、耐用性普遍不够刚买的新车,隔音也好、车机也流畅,等开2年之后,车辆各种异响也出来了,车机卡顿的也不行了。
2025年03月22日
91 阅读
0 评论
0 点赞
2025-03-22
如何安全购买vx白号?30元自动发货与2元批发微信白号攻略
要安全购买微信白号(未实名认证且未绑定银行卡的微信号),并实现30元自动发货或2元批发,可以参考以下详细攻略:一、了解微信白号的定义与特点定义:微信白号是指未绑定任何手机号码、银行卡或实名认证的微信号,通常具有较高的安全性,适合用于营销推广、隐私保护等用途。特点: - 安全性高:由于未绑定敏感信息,白号不易被封号或泄露隐私。 - 功能限制:白号可能无法使用某些高级功能,如绑定支付功能。 - 市场需求大:白号因其匿名性和安全性,受到个人用户和企业用户的青睐。二、选择可靠的购买渠道正规平台: - 第三方交易平台:如淘宝、拼多多等,这些平台上有许多卖家提供微信白号交易服务。建议选择信誉度高的商家,并仔细查看评价和交易记录。 - 专业微信白号平台:如“交易猫”、“飞翔号商网”等,这些平台提供自动发货功能,确保账号安全。 - 自助下单平台:如“wxx小号自助购买平台”,支持自动发货,操作简单且价格实惠。注意事项: - 验证卖家身份:确保卖家是真实可靠的,避免购买到非法获取的账号。 - 价格合理性:警惕过低的价格,可能涉及非法获取的账号。 - 支付安全:建议使用第三方支付工具(如微信支付、支付宝)进行支付,以保障资金安全。三、购买流程与注意事项购买流程: - 选择平台:根据需求选择合适的平台,如“交易猫”提供30元自动发货服务,而“wxx小号批发网”提供2元批发服务。 - 填写信息:在平台上填写账号信息(如用户名、密码、收货地址等),并确认支付方式。 - 等待发货:支付成功后,平台会自动将账号发送到指定邮箱或通过短信通知。注意事项: - 修改密码:收到账号后,务必立即修改初始密码,避免账号被他人滥用。 - 核对账号信息:确认账号是否符合需求,特别是账号的安全性和功能完整性。 - 遵守法律法规:使用微信白号时,需遵守相关法律法规,避免因违规操作导致账号被封禁。四、如何实现30元自动发货与2元批发30元自动发货: - 平台选择:如“交易猫”提供30元自动发货服务,用户只需支付30元即可获得一个新注册的微信白号。 - 操作步骤:访问平台官网,选择“30元自动发货”服务。填写相关信息(如邮箱地址),完成支付。平台会在24小时内自动将账号发送到指定邮箱。2元批发: - 平台选择:如“wxx小号批发网”提供2元批发服务,适合需要大量账号的用户。 - 操作步骤:访问平台官网,选择“2元批发”服务。填写购买数量和收货信息。完成支付后,平台会批量生成并发送账号。五、售后与风险提示售后保障: - 自动发货平台:如“交易猫”提供24小时客服支持,若账号异常可申请退换。 - 自助下单平台:如“wxx小号自助购买平台”,提供在线辅助验证链接,确保账号安全。风险提示: - 账号安全:购买后需及时修改密码,避免账号被盗用。 - 法律风险:使用微信白号时需遵守相关法律法规,避免因违规操作导致账号被封禁。六、总结购买微信白号时,建议选择正规可靠的平台,如“交易猫”、“wxx小号批发网”等,确保账号的安全性和合法性。对于30元自动发货和2元批发的需求,可以根据具体需求选择相应的平台和服务。同时,务必注意修改密码、核对账号信息以及遵守相关法律法规,以保障自身权益。
2025年03月22日
98 阅读
0 评论
0 点赞
2025-03-22
网站ICP备案、公安备案仿Github徽章美化
在网站建设过程中,ICP备案和公安备案是必不可少的环节。然而,传统的备案信息展示方式往往显得单调乏味,与网站整体风格格格不入。为了让你的网站更加美观专业,我们可以借鉴 Github 徽章的风格,对备案信息进行美化。整体的实现效果可以查看李森的博客下方页面,如下图整体实现过程是很简单的,注意将下面代码中的备案信息换成自己的。在网站需要显示备案信息的地方插入下面代码<div class="github-badge"> <a href="./" title="©2025 李森的博客"> <span class="badge-subject">Copyright</span> <span class="badge-value bg-purple">©2025 李森的博客</span> </a> </div> | <div class="github-badge"> <a href="https://beian.miit.gov.cn" ; target="_blank" title="鲁ICP备16035197号-4"> <span class="badge-subject">鲁ICP备</span> <span class="badge-value bg-green">16035197号-4</span> </a> </div> | <div class="github-badge"> <a href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=37011202002327" ; target="_blank" title="鲁公网安备37011202002327号"> <span class="badge-subject">鲁公网安备</span> <span class="badge-value bg-orange">37011202002327号</span> </a> </div>在网站css文件中放入以下代码/* 底部版权、备案等信息美化开始 */ .github-badge { display: inline-block; border-radius: 4px; text-shadow: none; font-size: 11px; color: #fff; line-height: 15px; background-color: #abbac3; margin-bottom: 5px } .github-badge .badge-subject { display: inline-block; background-color: #4d4d4d; color: #fff; padding: 2px 4px 2px 6px; border-top-left-radius: 4px; border-bottom-left-radius: 4px } .github-badge .badge-value { display: inline-block; color: #fff; padding: 2px 6px 2px 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px } .github-badge .bg-blue { background-color: #007ec6 } .github-badge .bg-orange { background-color: #ffa500 } .github-badge .bg-red { background-color: #f00 } .github-badge .bg-green { background-color: #3bca6e } .github-badge .bg-purple { background-color: #ab34e9 } /* 底部版权、备案等信息美化结束 */
2025年03月22日
86 阅读
0 评论
1 点赞
2025-03-22
网站增加搜一下功能
搜一下功能通过提升用户体验、增加页面曝光、优化关键词等方式,对SEO有显著帮助。基于typecho及Joe主题,实现方式如下找到主题public下的batten.php文件,因为我本地主题进行过魔改,在大概第30行左右,插入如下代码,其他主题同理。 <span class="text"> <a href="https://www.baidu.com/s?wd=<?php $this->title() ?>+site:lisen.cc" target="_blank">搜一下</a></span> <span class="line">/</span>
2025年03月22日
99 阅读
0 评论
0 点赞
2025-03-21
Beszel:一款开源轻量级的服务器资源监控平台
{mtitle title="简介"/}Beszel是一款功能全面、轻量级且易于部署的服务器资源监控平台,特别适合Docker环境和小型项目使用。其丰富的功能模块和灵活的告警机制能够帮助用户及时发现问题并采取措施,确保服务器稳定运行。{mtitle title="功能特点"/}轻量级架构 :与其他监控方案对比,Beszel的资源消耗更低,占用空间小,适合硬件性能有限的设备使用。Docker深度支持 :Beszel能够实时监控Docker容器的CPU、内存使用情况,并记录历史数据,帮助用户优化容器配置。多用户管理 :支持团队协作,管理员可跨用户共享监控系统,每个用户都有自己的系统视图,系统具有极高的灵活性和可扩展性。灵活告警机制 :用户可根据CPU、内存、磁盘、带宽等多个指标设置告警阈值,当这些指标达到预设的阈值时,Beszel会通过邮件或Webhook等方式发送警报通知,帮助用户及时发现问题并采取措施。历史数据分析 :长期记录设备运行状态,便于回溯性能瓶颈。开源与可扩展性 :Beszel提供REST API,便于二次开发与数据整合,用户可以在自己的脚本和应用程序中使用这些API来获取和使用监控数据。OAuth/OIDC支持 :兼容Google、GitHub等身份提供商,增强了登录安全性,同时可禁用传统密码,进一步提升了系统安全性。自动备份 :支持从本地磁盘或S3兼容存储中自动备份和恢复数据,确保数据的可靠性和完整性。{mtitle title="技术架构"/}Beszel采用Hub-Agent分离式架构,兼顾灵活性与扩展性。Hub(服务端) :基于PocketBase构建,提供Web仪表盘,负责数据的汇总、展示和管理。用户通过浏览器访问指定IP和端口即可查看监控面板。Agent(客户端) :部署于被监控设备,通过轻量级SSH服务器采集系统指标并传输至Hub。Agent需访问Docker守护进程(/var/run/docker.sock)以获取容器数据。{mtitle title="应用场景"/}个人开发者和小型企业:资源占用少,非常适合中小型项目的服务器监控。服务器运维和管理:便于集中监控多台服务器的Docker容器,降低运维复杂度。需要多用户管理的环境:支持不同用户间的系统资源共享和权限分配,更适合团队合作。如需了解更多信息,可以访问其官方网站或查阅相关的技术文档。{card-describe title="GitHub地址"}https://github.com/henrygd/beszel?tab=readme-ov-file {/card-describe}{card-describe title="官方文档"}https://beszel.dev/guide/hub-installation#docker-or-podman {/card-describe}{card-describe title="官方网站"}https://beszel.dev/ {/card-describe}{mtitle title="安装教程"/}安装Dockersudo apt updatesudo apt install -y docker.io docker-compose编写配置文件编写配置文件docker-compose.yml,在同一台设备安装Hub和Agent。services: beszel: image: henrygd/beszel:latest container_name: beszel restart: unless-stopped ports: - 8090:8090 volumes: - ./beszel_data:/beszel_data - ./beszel_socket:/beszel_socket beszel-agent: image: henrygd/beszel-agent:latest container_name: beszel-agent restart: unless-stopped network_mode: host volumes: - ./beszel_socket:/beszel_socket - /var/run/docker.sock:/var/run/docker.sock:ro environment: LISTEN: /beszel_socket/beszel.sock KEY: 'bednarvkpj97'启动服务sudo docker-compose up -d服务启动后,在浏览器访问http://IP:8090即可。
2025年03月21日
85 阅读
0 评论
0 点赞
2025-03-21
Springboot中使用Undertow替换默认的Tomcat容器
{mtitle title="Undertow介绍"/}Undertow是由JBoss(现为Red Hat)开发的一款轻量级、高性能的Web服务器。它是WildFly应用服务器的默认Web容器,专注于高并发和低延迟的场景。Undertow基于NIO(非阻塞I/O)构建,支持HTTP/1.x、HTTP/2和WebSocket协议。{mtitle title="Undertow优势"/}Tomcat凭借其稳定性、易用性和社区支持成为Springboot默认的容器。虽然Tomcat表现足够优秀,但是Undertow也有其可圈可点的地方。高并发支持:Undertow基于NIO构建,能够高效处理大量并发请求,适合高负载场景。低延迟:由于其非阻塞的设计,Undertow在低延迟场景中表现优异。轻量级:Undertow的核心代码非常精简,启动速度快,资源占用低。在资源有限的情况下,尤其是内存和CPU资源紧张的情况下,Undertow是更好的选择。{mtitle title="Undertow替换Tomcat"/}上面介绍了Undertow的优点,那么我们如何在Springboot项目中使用Undertow作为默认容器呢。先来看一下,默认Tomcat容器,启动成功后控制台输出信息为了使用Undertow容器,我们需要修改项目的pom.xml文件,排除掉Tomcat。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency>然后添加Undertow的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-undertow</artifactId> </dependency>然后重启项目,查看控制台输出
2025年03月21日
88 阅读
0 评论
0 点赞
2025-03-21
AISeo:一款Typecho主题Joe借助AI生成SEO关键词和SEO描述语的插件
一个网页的keywords及description对于网站的SEO是非常重要的,因此,我们在发布文章时,需要针对文章设置一个合理的keywords及description。但是如果每个文章,我们都手工设置keywords及description,势必会浪费我们极大的精力,在这个全名疯狂的AI时代,不利用AI生成一下keywords及description感觉自己不属于这个时代似的。{mtitle title="实现原理"/}其实整个实现过程是非常简单的,在发布文章页面,增加一个按钮,按钮点击时,通过http的方式调用对应模型的接口,并要求模型返回对应的keywords及description,使用正则表达式对返回的内容进行拆分,获取keywords及description信息,赋值到对应的字段上。{mtitle title="环境介绍"/}本文实现是有条件的,当然你可以在本文的基础上自行修改,进行更多的适配。李森的博客使用的是轻量高效的开源博客程序-Typecho,主题使用的是Joe,因此本文所有介绍的内容都是基于这两个前提的,当然,我们后续的代码会进行说明,方便你在其他地方使用或者使用了Typecho但是不是使用的Joe主题时,也能顺畅的使用。{mtitle title="GPT-API-free介绍"/}本着免费的原则,本文使用的AI工具是GPT-API-free。GPT-API-free是一个提供免费ChatGPT API密钥的开源项目,支持多种模型并允许开发者低成本接入GPT服务。特点支持Models, Embedding, text-davinci(免费版不支持), GPT-3.5-Turbo, GPT-3.5-Turbo-16K(免费版不支持), GPT-4, DALLE(免费版不支持), Whisper(免费版不支持)。(免费版就可以支持AutoGPT, gpt_academic, langchain等)免费版支持gpt-4,一天3次;支持gpt-4o-mini,和gpt-3.5-turbo共享一天200次。与官方完全一致的接口标准,兼容各种软件/插件。支持流式响应。国内线路使用动态加速,体验远优于使用代理连接官方。无需科学上网,国内环境直接可用。个人完全免费使用。免费使用申请领取内测免费API Key,申请地址 https://api.chatanywhere.org/v1/oauth/free/renderHost: https://api.chatanywhere.tech (国内中转,延时更低){mtitle title="博客引入AI"/}{alert type="error"}本插件只适用于Typecho并且需要使用Joe插件,{/alert}下载插件我已经将需要使用的插件封装好,可以直接下载使用{cloud title="AISeo.zip" type="bd" url="https://pan.baidu.com/s/1Nuoce_U8vkI9IG-60MEFlw?pwd=ccdd" password="ccdd"/}下载插件后解压,得到AISeo文件夹,将文件夹整体上传到网站的/usr/plugins文件夹内启用并配置插件进入网站后台,找到并启用AISeo插件点击设置按钮,进入设置页面模型名:gpt-3.5-turboAPI KEY:通过申请领取内测免费API Key介绍的网址免费申请。注意:申请API Key需要Github授权。输入地址:https://api.chatanywhere.tech其他保持默认即可,然后保存插件设置。配置文章编辑页面到admin目录下,找到write-post.php文件。在标题下方插入一个按钮<button type="button" class="generate-seo" onclick="generateSeoKeywords()">生成SEO关键词和描述</button>然后在最后一个div标签后面,添加以下代码<script> function generateSeoKeywords() { // 获取标题和内容 const title = document.querySelector('input[name="title"]').value; const text = document.querySelector('textarea[name="text"]').value; // 获取插件设置 const apiUrl = "<?php echo rtrim(Typecho_Widget::widget('Widget_Options')->plugin('AISeo')->apiUrl, '/') . '/v1/chat/completions'; ?>"; const keyValue = "<?php echo Typecho_Widget::widget('Widget_Options')->plugin('AISeo')->keyValue; ?>"; const modelName = "<?php echo Typecho_Widget::widget('Widget_Options')->plugin('AISeo')->modelName; ?>"; const maxLength = "<?php echo Typecho_Widget::widget('Widget_Options')->plugin('AISeo')->maxLength; ?>"; // 获取UUID const uuid = "<?php echo AISeo_Plugin::getUuid(); ?>"; // 从插件中获取UUID // 发起 AJAX 请求 fetch(apiUrl, { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer ' + keyValue, 'X-Request-ID': uuid // 添加UUID到请求头 }, body: JSON.stringify({ model: modelName, messages: [{ role: "system", content: "请你扮演一个文本SEO关键词和SEO描述生成器,下面是一篇关于 '" + title + "' 的文章,请你根据文章标题生成 " + maxLength + " 字左右的SEO关键词和SEO描述,格式使用SEO关键词:SEO描述:,关键词使用英文逗号分隔,除了你生成的内容,请不要输出其他任何无关内容" }, { role: "user", content: text }], temperature: 0 }) }) .then(response => response.json()) .then(data => { if (data.choices && data.choices.length > 0) { const content = data.choices[0].message.content; // 使用特定的分隔符进行分割 const keywordsMatch = content.match(/SEO关键词:(.*?)SEO描述:(.*)/s); if (keywordsMatch && keywordsMatch.length === 3) { const keywords = keywordsMatch[1].replace(/\s+/g, ''); // 关键词 const description = keywordsMatch[2].trim(); // 描述 const keywordField = document.querySelector('input[name="fields[keywords]"]'); const descriptionField = document.querySelector('textarea[name="fields[description]"]'); // 始终覆盖自定义字段 keywordField.value = keywords; descriptionField.value = description; // 使用 cocoMessage 显示成功提示 console.success('SEO关键词和描述生成成功!'); } else { // 使用 cocoMessage 显示失败提示 console.error('生成失败,请重试。'); } } else { // 使用 cocoMessage 显示失败提示 console.error('生成失败,请重试。'); } }) .catch(error => { // 捕获并处理错误 console.error('请求失败:' + error.message); }); } </script>配置按钮样式找到admin/css/style.css,在任意位置,增加以下样式.generate-seo { padding: 8px 10px; /* 缩小内边距,减少按钮高度 */ background-color: #4CAF50; /* 绿色背景 */ color: white; /* 字体颜色为白色 */ border: none; /* 去除边框 */ border-radius: 4px; /* 圆角边框 */ cursor: pointer; /* 鼠标悬停时显示为指针 */ font-size: 14px; /* 字体大小 */ transition: background-color 0.5s ease; /* 背景颜色渐变效果 */ margin-top: 0px; /* 仅调整此按钮的顶部外边距 */ } .generate-seo:hover { background-color: #45a049; /* 悬停时更深的绿色 */ }
2025年03月21日
70 阅读
0 评论
0 点赞
1
2
3
...
52