欢迎来到 ImQi1
? 为什么要做这个网站
起初建站只是一时兴起,和大多数人一样,我只是想记录下自己学习编程的心路历程和笔记,供自己以后有个参考。刚开始我以为有一个自己的网站是一个小众爱好,直到后来我才发现网络上有很多对此感兴趣的伙伴,于是我开始和他们保持联系。随着时间的增长,我对软件开发有了更浓厚的兴趣,我开始和同学、朋友交流,也有了自己独立开发的想法。在这之前我曾换过多个框架、主题,最终还是觉得自己开发一个主题最有成就感,也最能证明自己真正地学到了东西,所以你能在这里看到这些文字,也能看到我在此记录的其他内容。
我喜欢游山玩水,有自己的爱好,活动。我觉得一切有趣的事情,都会在此记录。
网站架构
Nuxt4 为本站提供了快速、简单、可维护的网站架构
Prisma 提供了类型安全的数据库操作,确保数据的一致性和完整性
样式选择
文章内容
小记
技术
讨论
最新图片

熊猫在吃竹子 - 来成都看大熊猫

小熊猫 - 来成都看大熊猫

两只小熊猫 - 来成都看大熊猫

在树上睡觉的大熊猫 - 来成都看大熊猫
熊猫塔 - 来成都看大熊猫
首页 - 个人毕业设计展
帖子 - 个人毕业设计展
地图 - 个人毕业设计展
景点 - 个人毕业设计展
登录 - 个人毕业设计展

拍摄于我家楼下,沈阳第二次下雪 - 近期拍摄的新照片

拍摄于中街,铜行胡同 - 近期拍摄的新照片

拍摄于中街,北部战区武警装甲车 - 近期拍摄的新照片

拍摄于中街,荟萃楼 - 近期拍摄的新照片

拍摄于中街,耳朵眼胡同 - 近期拍摄的新照片
印章外壳 - 收到了学校最后送给毕业生的礼物
卡片 - 收到了学校最后送给毕业生的礼物
印章 - 收到了学校最后送给毕业生的礼物
优秀毕设证书封皮 - 收到了学校最后送给毕业生的礼物
阅读更多
抖音刷到了一个模拟高中的游戏
高中毕业距今也有五年。大学四年,进社会一年。我平时不怎么念旧,高中、大学的照片,我没拍也没存。有时还会刷到类似“时间会惩罚念旧的人”的文案,我庆幸自己不是这样的人。 可能跟我的生活中突然闯进了一个人有关,我开始变得爱记录。平时这个网站只会写一些我去各个地方游玩的记录,类似游记。但是自从家里没钱,我也很久没工作以后,我就始终困在家中,没有机会去新地方,也没有机会见新的人。有时我会庆幸自己在大学玩过很多地方,在自己的技术没有落下的前提下,能让我自己从繁忙的学业中,抽出空来满足下自己的精神需求。偶尔叫上三两好友,去海边或者公园谈一谈生活琐事。 毕业到现在一年多,偶尔会和高中大学同学有联系。我来自黑龙江,有一部分高中同学就留在黑龙江,考公的考公,创业的创业。大学同学呢,我知道的就是我的五个舍友全考研了,还有一个在唐山做交付工程师,一个月六千多块。之前我在成都东站住的民宿的房东,找我说她儿子打算换工作,问我收不收徒弟。看了眼他的简历,没什么内容,写的太少了。和我一样,毕业一年,但只做过数据标注和专利申请,都是很边缘,接触不到核心业务的工作。我的建议就是转行。要么自己有明确的学习目标,然后跟着免费课程学;要么花钱,报一个班,适合没方向没自制力的。 对象明天走,白天还去找她的好闺闺玩了。我在家太无聊,用 Minmax 的 coding plan 套餐改代码,改累了就刷会抖音。今天刷到一个在 TapTap 的游戏,是模拟高中三百天的游戏,和我之前玩过的《情感反诈模拟器》很相似。后者是视频游戏,同时在节点会有选项,选择不同对故事的剧情有不同的影响。前者由于是小程序,制作团队也只有一个人,选项是必需的,节点处则出现的是插图,感觉是 AI 生成的。 游戏从高考前 300 天的第 1 天开始,每一周可以选择一个大目标,每天会包括一个事件,这个事件可能关于学习、人际交往和休息有关。你的选择会影响你的精力、人际关系值和对各个学科的掌握值。在这里你可以选择是努力学习,也可以和异性发展关系。 进入游戏之前,我在搜索这个游戏的时候,我就看到有很多人都发过自己的游戏结局。有人发考上北川大学(就是北大)的截图,有人和心爱的人考上同一所大学,而我想要爱情学业双丰收。 刚开始我还很有自信,通过不断的做错题,和班级学习好的学生交流学习方法,每次考试都把自己的成绩提升上去。同时周计划可以看到自己和哪...
小神兽终于上幼儿园了
 不得不说,孩子是个双刃剑,不在家的时候还有点儿想,在家的时候真是快要被吵疯了。 我家闺女典型的在外内向(相对而言),在内外向,平时不怕人,心情好碰到陌...
或许我们每个人都有问题
大家好,最近一直没更新文章,是因为最近发生的事情比较多,比较杂,我没有精力没有心情在这里发表更多内容。 首先就是工作的事情。我从 7 月份就来到成都,找了两个月的工作,最后也是在高新区的一家小公司入职了,做的是 Agent 开发。公司提供免费的 DeepSeek,各位可以从我的更新日志查看我最近的更新,这几天的提交有 100 多次。我甚至把公司的 DeepSeek 用超了,原因是我开了很多次 Workflow 检测 imqi1-cms 的问题,每次都是全量扫描,而且 DeepSeek 还涨价了。除了收拾以前留下的烂摊子,我最近也上线了很多新功能。包括前篇文章提到的那些,到现在我已经把本项目打磨得非常完美了。有全类型、无任何 any 的 TypeScript,且 0 报错的 nuxi typecheck、0 报错的 Eslint、0 警告的 TailwindCSS Itellisence。安全上,两步验证、评论内容审核、验证码机制、动态窗口防暴力滥用、CSP、每一处都有的防 XSS 等,每一处都不给攻击者可乘之机。功能也是越来越丰富,最大的就是富文本 Markdown 双切换,并且富文本和 Markdown 具有相同的撤回和重做,支持完整的 Markdown 语法和快捷键,自定义组件也是实时渲染的。 当然我现在想写这篇内容的动机不是因为我工作得多好,功能更新的多少,而是我们又吵架了。 这次,我把她叫到我身边看我写这些内容。 这一次吵得比以往更加激烈。我把押金 50 块的大桶水扒拉到地上,用拳头使劲地砸墙,还动手戳了她。她趁我生气的时候一直在收拾东西。 我有很严重的躯体化,这一次真的发作特别严重,我甚至想打 120。我全身抽筋,手指伸不直,上楼还需要扶着楼梯(我们现在住的是一个双层主卧)。 说这个之前,我想先说一下我们历经波折是怎么安定下来的吧。 我刚来成都的时候,想的就是先住酒店或者民宿,挑离公司近的地方,然后一周可以约五个以上的面试。可是我根本就不知道面试安排这么多,到最后还是没有可以聘用我的。在这期间她来找我,她挑了一个比较好的民宿,我们暂且住下了,并且她走了以后我还在这里继续住,因为便宜。然后再后来,她又来了,跟我换了一个民宿住下,那时我已经找到工作了,她就和我一起住在新的民宿。在这期间我一直没有租房,因为家里资金紧张。到后来我实在不想折腾了,我找...
更新日志
登录安全升级:新增 TOTP 动态码两步验证(后台可扫码绑定动态码,RFC6238 免依赖实现 + 动态码步进录入)、自适应图形验证码(同一 IP 连续失败后触发)、「信任此设备」后下次免动态码、登录限流迁 Redis(INCR+EXPIRE 内存兜底);后台「账户设置」新增两步验证启用/停用卡片。
二维码能力:新增通用 /api/qr 渲染任意文本为 PNG;文章页「扫码在手机端查看本文」、足迹地图角落「扫码在高德打开」当前/首个足迹地点(uri.amap.com/marker)、2FA 启用弹层顶部二维码登记(保留密钥复制兜底);首页与足迹 InfoWindow 二维码统一复用 SiteQrcodeButton 弹层组件(Esc 关闭/焦点送回/无障碍 aria)。
文章页新增「小程序看」入口,懒加载微信小程序码(未配置 WECHAT_MINI_* 凭据或文章不存在时自动隐藏、不再打微信 API);配套微信小程序码服务端脚手架(access_token 内存缓存 7200s 提前刷新 + getwxacodeunlimit 生成 PNG,配置驱动)。
后台「已信任设备」管理:登录勾选「信任此设备」后写入数据库,后台可见每台设备的 IP/最近登录/到期时间并逐一撤回;支持给每台设备自定义名称、后台重命名(PUT /api/admin/2fa/devices/[id],≤100 字,空串清空回「未知设备」);重命名后本地乐观回填,保存不再闪现旧名。
底层数据库从 MySQL 迁移到 PostgreSQL:Prisma 适配器改用 PrismaPg、原生 SQL 语法适配(反引号→双引号、FOREIGN_KEY_CHECKS→session_replication_role)、索引/约束名 schema 级全局唯一改名、初始化脚本整体重写为 PG(SERIAL/TEXT/TIMESTAMP(3)/JSONB/pg_trgm GIN)、docker-compose 换 postgres:16-alpine、系统信息页 DB 标签更新;后台数据导出改流式分块 + keyset 游标分页,大数据量导出内存恒定、并发写不重不漏。
文章详情页「相关文章」区修复首帧 hydration mismatch(SSR/CSR 节点结构不一致),改为 onMounted 才触发加载、首帧两端结构一致。
修复未配置 SSR_INTERNAL_REQUEST_SECRET 时首页被 referer 门禁 403 拦截、无法直达取到最新文章的问题:缺省回落固定默认值并让内部请求头两端一致(运维仍可设随机长串覆盖)。
留言板(页面型内容)评论的邮件通知链接不再 404:页面改走 /<slug>(原 /content/contents/messages)、无分类文章兜底改「uncategorized」(与前台一致)、站点 URL 去尾斜杠防双斜杠;小程序码端点移出 /api/mini/*(主站 <img> 无 HMAC 签名会 401,改公开 /api/qrcode)。
评论入库 IP 修复:源站前有 CDN/云接入时此前把回源节点 IP 写成评论 IP(足迹去重/限流键同样塌缩),现通用化 nginx real_ip 恢复真实客户端(DEPLOY_TRUSTED_PROXY 配回源段,DEPLOY_REAL_IP_HEADER 默认 X-Forwarded-For),provider 无关、后端 getClientIp 无需改动。
上传脚本(COS/服务器)输出进度条重做:单行原地刷新不逐文件滚动、进度块锚定终端底部、上传完成后清空不占满屏幕、修复长文本残留。
构建哈希改由 /api/site 接口下发(runtimeConfig.public 清空,NUXT 不再暴露站点配置),前端经 useSiteSettings 读取,供页脚/关于页/后台仪表盘展示。
后台设置面板新增搜索关键词结果缓存开关(searchCacheEnabled/Expire 持久化);搜索回归数据库逐分支模糊查询,放弃 Redis 倒排索引方案(避免分词召回缺口与跨架构部署的 EBADPLATFORM 问题)。
















