- 博客(48)
- 资源 (10)
- 收藏
- 关注
原创 【解决报错】You can‘t write against a read only replica
今天同事忽然跟我线上的一个演示站不好用了,报错内容:You can‘t write against a read only replica。查了一下原因,是因为redis链接出错导致的,因为本站点使用的是宝塔自带的redis,时间久了可能会出现不稳定的情况。线上运营的项目,尽量用redis服务,不要用自己搭接的。重启redis服务后问题解决。
2025-03-18 10:48:30
114
原创 【微信小程序】获取位置功能在体验版好用但正式版不好用的解决方案
最近做一个微信小程序,迭代功能的时候,加入了获取用户位置信息的功能,前端开发好后,发布审核通过后,出现了一个奇怪的现象,那就是在体验版里获取位置信息是好用的,但发布的正式版,这个功能却不起效,让我一度认为是配置项还是代码什么的没写好。其实是因为小程序的用户隐私保护没有更新,当小程序中涉及到获取用户手机号,位置信息等敏感数据的时候,都需要签署一份协议,审批通过后功能才能生效。点击去完善,填写好获取这些敏感信息的业务场景,留个联系电话,去提交审核就可以了。然后往下拉到三分之二的位置,找到“服务内容声明”。
2025-03-08 19:32:22
285
原创 【PHP】fastadmin中对addons进行路由重写
公司的项目中使用了一个addons的cms插件,要求在这个插件的基础上做二次开发,新加了页面,发现url路径太难看了,默认是 addons/cms/index/calendar,想优化一下,但通过deepseek的建议,貌似不对,只能自己摸索了。研究后发现,需要在application/extra/addons.php中对新规则进行编写,而不是写在别的route.php中,这点需要注意,再一点需要注意的是路由的单词貌似不能写那种双词的,我开始写的是一个双词的url,怎么匹配都无法成功。
2025-03-03 15:18:59
289
原创 【PHP】fastadmin框架后台开关的传值问题
fastadmin的后台ui框架中,处理列表开关的场景比较多见,有时传值不是0和1,而是1和2,那么就需要调整js的代码了。通过指定yes和no的值来传递打开和关闭的值,就灵活的解决了需求。
2025-02-28 17:38:23
387
原创 【Nodejs】用pm2管理nodejs服务
做推送服务,nodejs还是很优秀的,主程序可以写一个推送事件,让守护程序去订阅这个事件,然后去请求nodejs推送给客户端,整个流程就比较优雅。最近公司要搞一个网页聊天室,想到了nodejs,但在linux中运行它,最好有个守护进程去管理它,想到了pm2。使用pm2命令去运行它。修改源代码后重新加载。
2025-02-28 16:54:50
310
原创 【PHP】利用阿里云邮件推送服务发邮件
再配置好MX记录和CNAME记录,然后返回列表点击验证链接。验证完毕后进入配置页中检查,是否都验证通过,如果都通过了,就可以继续下一步了。最近公司要求给用户发邮件,邮件的域名是自定义域名,恰巧阿里有这个付费服务,就购买了试一试。首先配置邮件域名,点击右上角新建域名开始配置,经测试,未备案的域名也可以。到此为止就可以发邮件了,邮件标签和模板管理可以暂时无视。接下来配置一个发件的邮箱, 别忘了设置SMTP密码。先配置好两个TXT记录解析。经测试,发送邮件没有问题。
2025-01-21 16:37:30
456
原创 【Java】在idea中配置Maven实现动态切换环境
在打包或者本地调试时,只需要选中自己想用的环境即可,但需要注意一个小坑,在第一次切换后,需要先点击一下上图左上角的加载图标才能加载到最新环境,这里需要细心观察一下,最好的习惯是切换后,点击maven刷新,再去启动或者打包。但可以通过maven+idea的配置,达到动态切换的效果,会方便很多。这里把active的内容替换成了一个变量@env@
2024-11-15 14:55:13
686
原创 【Java】Springboot中通过计划任务发送邮件提醒
在实际线上项目中,有不断接受到推送方发来的数据场景,而且是不间断的发送。如果忽然间断了,应该是出问题了,需要及时检查原因,这种情况比较适合用计划任务做检查判断,出问题发邮件提醒。这样就达到了计划任务检查的效果,还是比较实用的。
2024-11-14 17:16:15
341
原创 【Java】Springboot实现redis的订阅功能
项目中某些业务,使用订阅功能会更加高效,除了使用MQ,Socket,也可以使用redis达到效果,本文中介绍在springboot中使用redis订阅功能。这样就达到了订阅的效果,以后有时间会在实际线上场景下与MQ对比一下,看看谁更稳定。
2024-11-12 17:34:43
645
原创 【Linux】linux系统自带的日志切割工具logrotate详解
切割周期切割周期,多久切割一次。daily : 切割周期为 每天weekly : 切割周期为 每周monthly : 切割周期为 每月yearly: 切割周期为 每年切割大小当日志文件到达指定的大小时才转储。默认单位是 bytes。bytes (缺省) 及 KB (sizek) 或 MB (sizem)如: size 30k、 size 50M日志文件保留个数日志文件保留备份的个数。默认是 0。如:0 指没有备份;5 指保留最近的5个备份,其余的全部删除。
2024-11-11 11:51:19
1255
原创 【PHP】fastadmin中获取选项卡的值
在后台开发中,fastadmin支持tab选项卡的切换,这个切换通常可以将列表数据分门别类的显示,比较好用,但想在控制器中拿到它的值就没那么容易了。本文中将在关键js部分中添加一段代码,以达到控制器可以轻松获取tab的值的效果。这样就可以轻松拿到选项卡选中的值了,也可以在where语句中使用了。
2024-11-08 16:21:16
539
原创 【php】fastadmin中使用级联下拉菜单
这里的categorytpl就是之前在html中声明的script的id, r.region需要自己在ajax数据中维护,以正常显示在表格中。在项目中,将客户根据省市和类别分类是非常常见的场景,在fastadmin的后台管理中,对于有数据据绑定的下拉菜单搜索条件,是需要额外编写的。位置随意,主要是要声明对ajax的数据源地址data-url属性。需要注意集合中的键值格式。
2024-11-08 11:17:02
667
原创 【PHP】Laravel使用自定义命令实现redis订阅功能
laravel中使用计划任务是比较常用的操作,效果跟TP差不许多。2.在宝塔中新建守护进程,推荐使用supervisord。注意订阅与发布的名字要统一,打印订阅日志观察效果。
2024-11-07 11:12:46
169
原创 【异地组网】基于docker zerotier planet搭建虚拟局域网络
前段时间使用zerotier+moon搭建了一套异地组网,虽然成功了,但也存在一些问题,比如因为服务器在国外,所以偶尔会导致各端点之间ping不通的情况,为了解决这个问题,我们本次尝试搭建 PLANET 行星服务器,可以简单理解为一套docker私服。首先需要有一台具有公网 ip 的服务器(需要开放 3443/tcp 端口,需要开放 3000/tcp 端口,9994/tcp 端口,9994/udp 端口)通过安装程序提供的链接把planet文件下载下来,以备用。3个空分表是ip段,ip的起始,ip的结尾。
2024-10-23 18:18:17
744
原创 【邮件服务】快速注册基于zoho的自定义邮件服务
当项目中需要给用户发邮件时,就会需要考虑自定义邮箱的问题了,自己搭建成本比较高,国外有一些比较优秀的提供商可以考虑,比如zoho,yandex等等,因为zoho比较简单,上手比较容易,所以本文就带大家一起新建一个自己的邮箱服务。跟着网站指引,需要添加TXT,MX和SPF等域名解析纪录,照着做就可以,解析生效后,就可以创建一个邮箱账户啦,然后给他定义一个密码,就可以在程序中使用它发邮件了。打开zoho的官网并且注册,因为本次服务主要是国外用户,所以注册的是zoho的海外官网,而不是cn的。
2024-10-22 17:31:45
391
原创 【PHP】使用PM2来管理PHP的redis订阅功能
最近项目中有给客户发验证码邮件的需求,而发邮件通常比较慢,想要前端调用接口立马返回,则需要用到类似MQ的消息订阅机制,为了简单方便,使用了redis的订阅与发布来实现此功能。通过PM2可以比较方便的管理持续监听级别的PHP需求,如果有需要,以后也可以替换成mq等更加专业是实现。别忘了想要命令功能生效,还得在application目录下的command.php中添加注册。点击保存后,测试一下消息发布功能,是否能够被订阅。关于自定义邮件服务,这是另一个话题了,本篇暂不赘述。
2024-10-22 17:05:09
401
原创 【宝塔】启动springboot项目时不生成日志
3、再切换回原日志路径,/www/wwwlogs/java/springboot。2、更改一下日志路径,这里我是退到了/www/wwwlogs/java。5、然后保存,项目会自动重启,日志就可以正常显示与存储了。1、打开这个项目的设置,来到日志管理。
2024-10-06 14:30:30
1298
原创 【异地组网】搭建 Zerotier Moon为异地组网网络加速
由于Zerotier服务器在国外,导致在国内的速度不快,所以官方推荐设置自己的moon服务器做节点加速。↑ 点击通过后,过几秒钟(不需要刷新页面)会发现,系统为云服务器分配了ip 185,可以在short-name文本框中为这台机器起一个名字方便识别。默认监听的端口是9993,这个端口需要对外提供服务,需要在服务器防火墙和云服务提供商的安全组的UDP传输类型进行设置放行。经测试,有时候加入网络识别的慢一些,有可能是开启了代理的原因,如果长时间服务器没有识别到,建议检查网络后重试。
2024-09-29 21:04:33
2700
2
原创 【宝塔】部署php连接redis报 WRONGPASS invalid username-password pair or user is disabled.
将php.ini中的禁用函数putenv删除,问题解决。
2024-09-29 20:53:47
228
原创 【github】解决github fatal: unable to access的问题
C:\Users\当前用户名.gitconfig。二、通过修改配置文件方式(方法二)一、通过命令行(方法一)
2024-09-29 20:53:01
880
原创 【github】拉取github仓库报错 Authentication failed for..
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.(大家也可以看一下,是github要求使用双因子验证的通知)5、最后,这里注意保存下方生存的token代码,此代码只能看一次,因此要复制粘贴保存在不会被删除的地方。1、首先进入GitHub,点击头像打开下拉栏,进入settings页面。
2024-09-29 20:51:34
360
原创 【微信公众号开发】扫描带参数二维码事件支持EventKey字符串传参
【代码】【微信公众号开发】扫描带参数二维码事件支持EventKey字符串传参。
2024-09-29 20:47:56
235
原创 【nodejs】解决 vscode下运行pnpm : 无法加载文件 C:\Users\AppData\Roaming\npm\pnpm.ps1问题
pnpm : 无法加载文件 C:\Users\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本。以超级管理员打开powershell。重新输入pnpm就可以正常使用了。全局安装pnpm后出现 ,
2024-09-29 20:44:26
314
原创 【nodejs】国内npm源镜像(npm加速下载) 指定npm镜像
使用腾讯云镜像源加速 NPM。使用淘宝镜像源加速 NPM。npm 官方原始镜像。
2024-09-29 20:41:59
319
原创 【Linux】删除某个目录时,提示Operation not permitted
【代码】【Linux】删除某个目录时,提示Operation not permitted。
2024-09-29 20:38:27
221
原创 【GIT】git拉取代码报“warning: Pulling without specifying how to reconcile divergent branches is discouraged
【代码】【GIT】git拉取代码报“warning: Pulling without specifying how to reconcile divergent branches is discouraged。
2024-09-29 20:36:39
358
原创 【Java】springboot中使用RedisTemplate存储乱码问题
通过研究发现,RedisTemplate默认使用JdkSerializationRedisSerializer类来保存,以16进制编码入库的,所以看起来像是乱码。前几天操作RedisTemplate时,发现入库有点乱码,虽然并不妨碍获取,但对于使用redis工具查看时并不是太友好。这样存储在redis中的文字就正常了,看起来就舒服多了。所以只需要定义一个配置类,替换默认的序列化类就可以。
2024-09-29 20:29:59
675
1
原创 【Java】远程连接nacos配置中心报错:Client not connected, current status:STARTING
PS:nacos使用的是2.0.4版本。(与主端口偏移量1000,1001)放开后,程序链接nacos成功。
2024-09-26 18:58:09
397
原创 【Java】springboot打包运行报:no main manifest attribute, in XXXX的解决办法
【代码】【Java】springboot打包运行报:no main manifest attribute, in XXXX的解决办法。
2024-09-26 18:57:19
151
原创 【Java】maven本地jar包打包时无法打进jar的解决方式
当我们需要通过maven打包一些小众jar包时,maven仓库是没有的,所以默认也无法打入。只能通过导入本地jar包,并且引入插件声明,才能解决。
2024-09-26 18:56:03
777
原创 【nodejs】Windows系统快速删除node_modules目录
为了解决这些问题,可以使用 rimraf,这是一个在Node.js环境中运行的强力删除工具,专门用于删除具有复杂结构的 node_modules 文件夹。Windows 在删除时需要遍历每一个子文件夹和文件,这大大增加了删除过程的时间。通过使用 rimraf,可以显著加快删除大型和复杂文件夹如 node_modules 的速度,从而提高工作效率。如果 node_modules 文件夹中的文件路径过长,系统在处理这些路径时会更加复杂和缓慢。每次删除文件时,都需要更新文件系统的元数据,这进一步延长了删除时间。
2024-09-26 18:51:44
474
原创 【禅道】开发笔记
获取项目根路径:获取项post数据:获取最后一句执行sql:通过PHP设置一个js变量:?通过PHP构造一个URL:inlink('…this−app−loadLang′project′;
2024-09-26 18:40:36
857
原创 【VUE】解决Error: Cannot find module ‘webpack/lib/RequestShortener‘
最近打包一个老的vue2项目,npm install后发现报错,Cannot find module ‘webpack/lib/RequestShortener’网上还有一种说法,将vue脚手架版本调整成4.5.15,可以顺便试试,但package-lock.json是一定要删的。删掉了package-lock.json和node_modules后,再全局npm install。
2024-09-26 18:33:28
595
ExamOnline.zip
2019-05-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人