Category: 综合

70 Posts

spring security AbstractAuthenticationProcessingFilter设置登录url404问题
突然设置的登录url失效,访问返回404错误 @Slf4j public class GithubLoginAuthenticationFilter extends AbstractAuthenticationProcessingFilter { protected GithubLoginAuthenticationFilter(String defaultFilterProcessesUrl) { super(defaultFilterProcessesUrl); } protected GithubLoginAuthenticationFilter(RequestMatcher requiresAuthenticationRequestMatcher) { super(requiresAuthenticationRequestMatcher); } public GithubLoginAuthenticationFilter() { super(new AntPathRequestMatcher("/auth2/receive", "GET")); } 原因:因为偷懒把权限 /auth2/** 路径设置到静态访问目录,导致直接访问到template-loader-path目录去了,不会进AbstractAuthenticationProcessingFilter过滤器,所以导致404。(没来得及看源码,后面补上) # 放行静态资源 web.static.filtrate=/js/**,/css/**,/images/**,/fonts/**,/lib/**,/authority_error,/favicon.ico,/**.ico,/error,/api/v1/**, /auth2/** 解决方法: 把 /auth2/** 设置到匿名用户组里去 ROLE_ANONYMOUS 。
踩坑 mybatis-plus Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table ‘
org.springframework.jdbc.BadSqlGrammarException: ###Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorExceptin: Table ‘xxx.xxx’ doesn’t exist ###The error may exist in com/example/mapper/UserMapper.java (best guess) ###The error may involve defaultParameterMap ###The error occurred while setting parameters ###SQL: SELECT id,name,age,email FROM user ###Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table ‘xxx.xxxr’ doesn’t exist ; bad SQL grammar []; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table ‘xxx.xxx’ doesn’t exist 错误原因:原因实体类pojo名字和表名不一致!!mybatis-plus默认规则是实体类和表名以驼峰命名法映射,要求是需要符合这个规则才能执行成功。 所以需要在实体类上加@TableName(“表名”) 由于我使用的是官方的代码生成器,所以有这么一句 ...
thumbnail
记录IDRAC断电恢复上一次配置(密码)的问题
https://blog.curlc.com/archives/595.html 这台机器买来后idrac有一个问题,只要断电,idrac的密码就会被恢复为上一次设置的密码.如果在bios重置密码也会被“永久”的设置成calvin这个默认密码。 所以特别蛋疼,每次断电开机完就得修改密码,在dell社区问过一次,答复居然是“一般服务器是不会断电”,真的是无语了...... 昨天由于折腾ssl把idrac搞挂了,这次断电也没有恢复,就进bios重置了idrac(恢复出厂设置)后居然就好了,断电密码被“重置”这个问题也就没了,但是我记得有一次我也重置过,但是没用,总之,这是一个奇葩的问题~    
office e5 常见问题
查看剩余天数(使用申请的e5账户登录) https://developer.microsoft.com/zh-cn/microsoft-365/dev-program https://developer.microsoft.com/zh-cn/microsoft-365/profile Office管理界面组织管理号登录 www.office.com/?auth=2 admin管理中心 https://admin.microsoft.com Microsoft 365 Onedrive容量 1T 修改 为5T,老帐号不删除重建 https://blog.curlc.com/archives/66.html 你没有访问此服务的权限。请联系你的IT部门以获取帮助。(错误代码:0x8004e4d1) 这种一般是你没有给这个账号许可证。 自动续期时间 目前(2020-07-20)调用api情况下, 一般在最后30天以内就会进行续期3个月。 不注意点击了取消订阅 (来自读者的反馈)万一手残,还没订阅还没到期就点了取消订阅,显示已禁用,仪表板显示已到期,有这样情况的话,进入office管理界面网站,可以跟微软客服沟通下,他们会手动帮你重新订阅上,只不过, 仪表板还是会显示已到期(这个解决办法是,点击上面的三角形,看到“错过xxx”那个地方,要跟微软写个反馈,反馈你目前的开发进度,用纯英文写,提交之后,看微软审核,审核通过,仪表板就会重新显示剩余天数了)   以上信息来自于群成员于读者反馈,部分已知名单如下(为保护隐私,已隐藏部分关键字):   Skyler 942****459 peakgymnast 隐藏 vivi fr**@163.com
thumbnail
Fiddler无法解密https请求解决方法
The selected session is a HTTP CONNECT Tunnel. 所选的会话是 HTTP CONNECT 隧道。 该隧道使客户端能够通过 HTTP.......   https抓包出现这个标识无法解密https会话,证书存储区中可能有一些旧的Fiddler证书,由于某些原因(比如升级版本,更换版本后重新生成证书),这些证书在重置期间未清除,所以需要手动进行清除旧证书。   请确保未选中Fiddler的HTTPS选项中的“解密HTTPS通信”复选框,然后关闭Fiddler。 然后在Windows的任务栏搜索框中,键入“管理用户证书”,然后按Enter。当前用户的证书管理器将打开。 找到所有颁发者:DO_NOT_TRUST_FiddlerRoot并删除它们。请小心不要删除任何其他证书。 如果您具有管理权限,请在Windows的任务栏搜索框中键入“管理计算机证书”。本地计算机的证书管理器将打开。 找到所有颁发者:DO_NOT_TRUST_FiddlerRoot并删除它们。请小心不要删除任何其他证书。 打开Fiddler,然后选中“解密HTTPS流量”复选框。将会出现一些提示,要求信任新生成的CA证书。信任证书,然后重新启动Fiddler。 大概由3个地方需要进行删除,注意点别删到其他证书就好~ 参考文章: https://www.telerik.com/forums/system-security-cryptography-cryptographicexception#FayHvD9zcUGARfM-gi4pyA https://www.telerik.com/forums/https-decryption-does-not-work
thumbnail
红米K20 Pro 刷Pixel Experience
看见k20 pro 有pixel的包了,刷了后感觉还不错,比小米要各种权限好多了,还会后台自动刷新权限。 网上的教程很多,参考了下,有个地方要注意的是,用国内的miui做底包不行,会导致卡在 mi logo界面。 先刷 twrp 双清及格式化data 刷国际版的miui 11(Android 10 版本的) Wipe Cache/Dalvik 再刷Pixel Experience Wipe Cache/Dalvik 刷机完成后需要 ke xue 上网,不然会卡在登录页面。   欧盟版 miui 11 下载地址: https://nchc.dl.sourceforge.net/project/xiaomi-eu-multilang-miui-roms/xiaomi.eu/MIUI-STABLE-RELEASES/MIUIv11/xiaomi.eu_multi_HMK20ProMI9TPro_V11.0.8.0.QFKCNXM_v11-10.zip Pixel Experience  下载地址:https://download.pixelexperience.org/changelog/raphael/PixelExperience_Plus_raphael-10.0-20200407-0636-OFFICIAL.zip   2020-05-18: 发现个非常严重得问题,那就4g上网特别差,看了网上说是美国lte频段和国内不同?只能连一个频段?还是刷成国际版用吧。 发现问题是,是系统选择的apn不对,自己手动选下就可以了。 对了,快充也没了。 2020-06-04: 在体验了半个月后,发现个特别严重的问题,如果在信号差的地方到信号好的地方,网络一样的慢,而且得手动切换apn才能解决。 更新时间为:May 16, 2020 23:01 参考教程:https://blog.kangkang.org/index.php/archives/424
Unexpected AOP exception; nested exception is java.lang.IllegalStateException:
很奇怪的一个bug,在本机上运行没问题,丢到服务器中就会报这个错。 原因 spring-aop版本与 aspectjweaver 包版本冲突 解决办法 我的maven项目的spring-aop版本是5.1.9,其他的spring版本是5.2.1,aspectjweaver 版本是1.8.3,将spring-aop的版本改成5.2.1,运行正常。 由于我的项目中并没有用到spring-aop包,用的是aspectjweaver ,直接将spring-aop删掉,运行正常 原文链接:https://blog.csdn.net/qq_40301107/article/details/103290420
thumbnail
E5 自动订阅程序[已开源]
由于我前端是废的,界面将就看看就行了,不影响程序~ 申请office E5 开发者试用的教程 新版可续签的Office 365开发者试用订阅!E5(附自动续订的方法) Onedrive容量 1T 修改 为5T,老帐号不删除重建 说明 此程序部署在我的服务器上,每隔2小时会自动调用outlook api 获取邮件列表 对于信息: 只会保存必要的 client_id、client_secret,其他任何内容都不会保存, 会读取授权的outlook账号邮箱邮件,但不会保存任何信息,仅仅是调用api。 请单独创建一个同域 E5 子账号进行授权,不要使用此账号进行发送、接收个人邮件,以免发生误会。 ...
[转]nginx 开启websocket
1、编辑nginx.conf,在http区域内添加下面配置: map $http_upgrade $connection_upgrade { default upgrade; '' close; } map指令的作用: 该作用主要是根据客户端请求中$http_upgrade 的值,来构造改变$connection_upgrade的值,即根据变量$http_upgrade的值创建新的变量$connection_upgrade, 创建的规则就是{}里面的东西。其中的规则没有做匹配,因此使用默认的,即 $connection_upgrade 的值会一直是 upgrade。然后如果 $http_upgrade为空字符串的话, 那值会是 close。 2、虚拟主机的配置文件,在location匹配配置中添加如下内容: proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; 示例如下: upstream socket.kevin.com { hash $remote_addr consistent; server 10.0.12.108:9000; server 10.0.12.109:9000; } location / { proxy_pass http://socket.kevin.com/; proxy_set_header Host $host:$server_port; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; }   3、Nginx代理webSocket经常中断的解决方法(也就是如何保持长连接) 现象描述:用nginx反代代理某个业务,发现平均1分钟左右,就会出现webSocket连接中断,然后查看了一下,是nginx出现的问题。 产生原因:nginx等待第一次通讯和第二次通讯的时间差,超过了它设定的最大等待时间,简单来说就是超时! 解决方法1 其实只要配置nginx.conf的对应localhost里面的这几个参数就好 proxy_connect_timeout; proxy_read_timeout; proxy_send_timeout; 解决方法2 发心跳包,原理就是在有效地再读时间内进行通讯,重新刷新再读时间 配置示例: http { server { location / { root html; index index.html index.htm; proxy_pass http://webscoket; proxy_http_version 1.1; proxy_connect_timeout 4s; #配置点1 proxy_read_timeout 60s; #配置点2,如果没效,可以考虑这个时间配置长一点 proxy_send_timeout 12s; #配置点3 proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; } } } 关于上面配置2的解释 这个是服务器对你等待最大的时间,也就是说当你webSocket使用nginx转发的时候,用上面的配置2来说,如果60秒内没有通讯,依然是会断开的,所以,你可以按照你的需求来设定。比如说,我设置了10分钟,那么如果我10分钟内有通讯,或者10分钟内有做心跳的话,是可以保持连接不中断的,详细看个人需求 WebSocket与Socket的关系 - Socket其实并不是一个协议,而是为了方便使用TCP或UDP而抽象出来的一层,是位于应用层和传输控制层之间的一组接口。当两台主机通信时,必须通过Socket连接,Socket则利用TCP/IP协议建立TCP连接。TCP连接则更依靠于底层的IP协议,IP协议的连接则依赖于链路层等更低层次。 - WebSocket就像HTTP一样,则是一个典型的应用层协议。 总的来说:Socket是传输控制层接口,WebSocket是应用层协议。   本文转载至:https://blog.csdn.net/u011411069/article/details/98475433