tomcat容器get请求数组参数
记一次服务器故障
linux中删除文件后空间未释放
nginx配置支持ws反代
前言
最近线上项目有个小问题,在F12查看问题的时候发现了另外一个问题,就是今天的主题,ws连接报错了,总是报400错误,下面记录下如何解决
环境
因为项目部署在公司内网,用frp穿透出去用域名访问的,域名又ssl证书,一开始项目用ws协议,报错也是看起来就是需要换成wss协议才行
问题
换了周发现问题还在,但是报错不一样了,没有那么多错误了,不过请求还是400,用postman在公司内网连接ws协议发现没有问题,那就说明要么是frp的问题,要么就是域名所在nginx反代的问题
经过查询frp,发现frp是支持的,以前项目有过这个问题,所以frp不存在不能转发ws协议的问题,所以问题一定处在域名所在nginx,查看nginx的配置后发现确实有问题
域名邮箱设置问题
前言
最近折腾了一个命名,注册是从腾讯云注册的,但是因为某些原因DNS没有再腾讯云解析,换到了cf上,想着换个域名邮箱,发现配置了之后发给gmail给退信了
解决
1、问题1,再cf解析了两条腾讯云的mx记录后,立刻再腾讯企业邮箱看,发现虽然是使用中,但是用的还是腾讯云默认给的那个.work的地址,还折腾了找客户,等了一会后给发了两封邮件,一看,说审核通过了,可以用了!原来如此,需要审核!现在再看,发现可以了,因为之前一直用的腾讯自己的DNS服务,并且是一键解析到腾讯企业邮,所以么有遇到过这问题
2、问题2 弄好之后给我的gmail发邮件,发现被退回了,说什么未验证的!需要添加SPF之类的,一开始我还纳闷这是啥,后来我突然想起来,我看之前的域名解析邮箱的时候处理两条mx记录,还有一条txt的记录,v=spf1 include:spf.mail.qq.com ~all ,一开始我不知道这是干啥的,其实我一开始已经把这条添加到cf那解析了,问题1解决后,想着这玩意应该没啥用,就给删了!我又立马给加上了,发现可以发给gmail了!
centos防火墙的一些命令
前言
最近再用到centos防火墙的时候,用到了一些命令,记录下,防止忘记
添加规则
1 | sudo firewall-cmd --zone=public --add-port=5001/tcp --permanent |
移除规则
1 | sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent |
限制来源
1 | sudo firewall-cmd --zone=public --add-rich-rule=' |
应用配置更改,以上命令执行后都需要执行这个命令
1 | sudo firewall-cmd --reload |
查看防火墙规则
1 | sudo firewall-cmd --list-all |
mysql查看表大小排行
前言
备份的时候发现一些数据库挺大的,但是表很多,一个个去看不合适,所以用sql语句查一下
查看库大小排行
1 | SELECT |
查看表大小排行
1 | SELECT |
注意表排行的话,需要修改 table_schema 后面的值为你的数据库名称
康拓1电梯卡延期
mybatis-plus将date类型转为timestamp的问题
前言
最近项目上开发时遇到了一个问题,数据库中是datetime类型,实体类中是Date类型,我将该字段设置为例如’2023-08-01 23:59:59.999’时,实际存到数据库中时发现是’2023-08-02’了,下面记录下
问题
一开始看到,我以为我代码里设置错了,但是一通查看后,发现我代码里设置的确实是23:59:59。使用mybatis-plus时,框架会打印sql,我发现sql里是这样的end_time = TIMESTAMP '2023-08-14 23:59:59.999',,转成了TIMESTAMP 类型设置的。
TIMESTAMP 类型的精度通常只能到秒级别,而不是毫秒级别。因此,当插入一个带有毫秒级别的时间戳时,数据库会将毫秒部分舍去,保留到秒级别。看起来就是它进位了
解决
两种方式,一是使用LocalDateTime、二就是将毫秒部分直接舍去,比如end_time = TIMESTAMP '2023-08-14 23:59:59',,这样就没问题了