netlify部署hexo博客
netlify与vercel相同,netlify也是一个针对个人用户免费的服务托管服务,但优点是国内可访问
官网地址:https://app.netlify.com/
netlify与github账号进行绑定后,可以自动监控博客仓库的更改从而进行部署。并且国内可以访问。
注册进入官网,点击注册,选择使用github账户登录即可
导入仓库登录后,授权并导入git仓库,允许github仓库读取权限,接着在展示的列表中选中hexo仓库,点击import
构建如果是hexo的构建,一切默认即可,填写完一些信息比如项目的名称后,便可以点击构建
展示构建完成后便会部署到生成的域名,域名可以自定义
github使用action自动部署hexo
参考资料使用 GitHub Actions 自动部署 Hexo 博客到 GitHub Pages - 知乎 (zhihu.com)
GitHub Actions 来自动部署 Hexo - 知乎 (zhihu.com)
起因之前一直是在本地构建完成后上传到github,这次尝试使用github的action来完成
流程生成密钥对Linux系统执行
1ssh-keygen -t rsa -b 4096 -C "Hexo Deploy Key" -f github-deploy-key -N ""
会在当前目录生成公钥和私钥两个文件
配置私钥在存放博客源码仓库的设置setting下,赵傲secrets and variables,展开后选择actions,点击 new repository secret,输入密钥名与之前生成的github-deploy-key文件内容(非pub)
配置公钥将公钥配置到需要部署网页的仓库,像我源码目录和网页仓库都是同一个,只不过是不同分支,就在当前setting下继续配置,否则进入部署网页的仓库的setting。
se ...
vercel部署hexo博客
vercelvercel是一个针对个人用户免费的服务托管服务
官网地址:https://vercel.com/
vercel与github账号进行绑定后,可以自动监控博客仓库的更改从而进行部署。遗憾的是生成的域名国内已经无法访问,不过代理一下体验一番还是可以的。
注册进入官网,点击注册,选择使用github账户登录即可
导入仓库进入vercel的主页后,会建议导入git仓库,这里先给vercel的github仓库读取权限,接着在下方展示的列表中选中hexo仓库,点击import
构建填写完一些信息比如项目的名称后,便可以点击构建,构建过程可能会出错,比如仓库中存在yarn.lock文件等
展示构建完成后便会部署到生成的域名,但该域名国内已经无法访问,如果有个人域名,可以进行域名的绑定服务。
SpringBoot3自定义Sarter
变化
在SpringBoot2.7之前,starter的自定义方式为在META-INF/spring.factories文件里添加
12345org.springframework.boot.autoconfigure.EnableAutoConfiguration=\XXAutoConfigurationXXAutoConfigurationXXAutoConfiguration.....
SpringBoot2.7时,添加了一种新的配置方式:在META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports文件里添加配置类名称,每行包含一个配置类全限定名,并且此时还是支持spring.factories的配置方式的
在SpringBoot3.x开始,移除了factories的配置方式
开发流程引入依赖需要引入自动配置的依赖
1234 <dependency> <groupId>org.springframewor ...
强制跨域测试
参考资料如何设置你的edge浏览器允许跨域请求 - 掘金 (juejin.cn)
Tomcat 实现 HTTPS 访问 - 程序员自由之路 - 博客园 (cnblogs.com)
原始登陆方式浏览器通过post请求向服务器发送一条请求,服务器会进行登录认证操作,服务器在认证成功后,会向client进行set-cookie操作,接着访问系统页面即可以登陆成功的状态访问。
最初实现编写html文件,使用ajax发送post请求,请求成功后跳转到到系统页面。
123456789101112131415161718192021<html><head> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.js"></script> <script> var param = { "userInfo": "lRm3Wf/8tC9jXR+XEIOXWeYtle3vzTbS+dTrvFQrl81U4 ...
jar包加密
工具core-lib/xjar: Spring Boot JAR 安全加密运行工具,支持的原生JAR。 (github.com)
手动加密// 能加密class吗?不能
报错:java.util.zip.ZipException: error in opening zip file
加密123456789101112131415public class Enc { public static void main(String[] args) throws Exception { System.out.println(new File("./").getAbsolutePath()); XCryptos.encryption() // 需要加密的jar包 .from("./encryptJar/target/encryptJar-1.0-SNAPSHOT.jar") // 包括 ...
vpsfree免费vps申请
当前VPSFREE已停止申请工具官网:https://vpsfree.es/
虚拟地址生成:美国地址生成器 - 美国身份生成器 - 美国信用卡生成器 (meiguodizhi.com)
注册登录官网,点击注册即可,不需要邮箱接收验证码,信息可使用虚拟地址生成工具生成
登录注册完成进入登陆界面,使用邮箱和密码登录
申请vps
登录进入后点击new project,起个名字
点击order a new vps
选择系统和服务,这里选择ubuntu2204和免费版
输入主机名和密码,order now
提升ip不足,申请失败
修改class字节码中的字符串常量
原理Java文件在编译为class文件后,字符串内容会存储在字节码的常量池部分,理论上若有需求,可以修改此部分的值达到修改程序运行结果的目的。
字符串常量的字节码结构如下图:
实验实验文件测试程序为标准的helloworld程序,这里只输出hello,后续操作补上world
12345class My{ public static void main(String[] args) { System.out.println("hello"); }}
修改过程若目的为将hello改为world,则仅需要下载一个vscode插件“Hex Editor”,该插件支持直接修改二进制数据,我们只需要找到常量池部分的hello内容将其修改为world即可。
但该插件只能修改已有字节,如果要更改文件的长度比如添加或删除内容,是不支持的,所以这里写了个Java程序,通过写字节数组到文件的方法,在其中插入内容。
1234567891011121314151617181920212223242526272829303 ...
cloudflare代理github
参考资料gh-proxy
起因之前一直用gh-proxy来代理github,偶尔发现该网页的页脚有源码分享,于是自己搭建一个
Cloudflare注册首页:https://workers.cloudflare.com
注册账号并登录后,点击左侧”Workers 和 Pages“,点击创建
复制 index.js 到work.js点击部署,一般右侧预览窗口应显示最终效果。
但国内访问web.dev域名会被拦截,这里需要自定义域名代理
代码注释12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812 ...
euorg域名申请
参考资料资源分享|免费注册申请永久的eu.org顶级域名创建属于自己的域名,再也不用给博客域名续费了! - 墨天轮 (modb.pro)
工具虚拟地址生成器
Hostry注册HOSTRY - Instant Robust Hosting Services | HOSTRY Hosting Services
由于eu.org申请的时候不能直接填写cloudflare的解析服务器,所以这里使用hostry临时作为解析服务器。
经过尝试,现在Hostry已经无法使用qq邮箱和163邮箱注册,于是使用了临时接码平台(Hostry只用一次)
在注册时可以使用工具中的虚拟地址生成器生成信息
注册完邮箱里会收到验证邮件,第一次登陆会收到第二次邮件
登录时人机验证吗加载较慢,需要等一会儿
登录之后,点击Service中的Free DNS进入DNS页面
输入要申请的域名,点击创建DNS,后面的步骤默认
eu.org注册访问地址:https://nic.eu.org/ 进行账户注册
注册过程中的个人信息同样可以通过上方的信息生成器,但邮箱建议使用自己的邮箱,因为之后要接受域名审核成功的邮件
首先会接收到一 ...