-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
312 lines (286 loc) · 32.6 KB
/
index.html
File metadata and controls
312 lines (286 loc) · 32.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
<!DOCTYPE html><html lang="zh-CN" data-theme="light"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0,viewport-fit=cover"><title>Fisssssh-Blog - 记录轨迹,探索未知</title><meta name="author" content="fisssssh"><meta name="copyright" content="fisssssh"><meta name="format-detection" content="telephone=no"><meta name="theme-color" content="#ffffff"><meta name="description" content="一个热爱编程与艺术的博客,分享技术见解与创意灵感。">
<meta property="og:type" content="website">
<meta property="og:title" content="Fisssssh-Blog">
<meta property="og:url" content="http://example.com/index.html">
<meta property="og:site_name" content="Fisssssh-Blog">
<meta property="og:description" content="一个热爱编程与艺术的博客,分享技术见解与创意灵感。">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="http://example.com/img/head.jpg">
<meta property="article:author" content="fisssssh">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="http://example.com/img/head.jpg"><script type="application/ld+json">{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Fisssssh-Blog",
"alternateName": [
"记录轨迹,探索未知",
"example.com"
],
"url": "http://example.com/"
}</script><link rel="shortcut icon" href="/img/head.jpg"><link rel="canonical" href="http://example.com/index.html"><link rel="preconnect" href="//cdn.jsdelivr.net"/><link rel="preconnect" href="//fonts.googleapis.com" crossorigin=""/><link rel="preconnect" href="//busuanzi.ibruce.info"/><link rel="stylesheet" href="/css/index.css?v=5.5.2"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@7.1.0/css/all.min.css"><script>
(() => {
const saveToLocal = {
set: (key, value, ttl) => {
if (!ttl) return
const expiry = Date.now() + ttl * 86400000
localStorage.setItem(key, JSON.stringify({ value, expiry }))
},
get: key => {
const itemStr = localStorage.getItem(key)
if (!itemStr) return undefined
const { value, expiry } = JSON.parse(itemStr)
if (Date.now() > expiry) {
localStorage.removeItem(key)
return undefined
}
return value
}
}
window.btf = {
saveToLocal,
getScript: (url, attr = {}) => new Promise((resolve, reject) => {
const script = document.createElement('script')
script.src = url
script.async = true
Object.entries(attr).forEach(([key, val]) => script.setAttribute(key, val))
script.onload = script.onreadystatechange = () => {
if (!script.readyState || /loaded|complete/.test(script.readyState)) resolve()
}
script.onerror = reject
document.head.appendChild(script)
}),
getCSS: (url, id) => new Promise((resolve, reject) => {
const link = document.createElement('link')
link.rel = 'stylesheet'
link.href = url
if (id) link.id = id
link.onload = link.onreadystatechange = () => {
if (!link.readyState || /loaded|complete/.test(link.readyState)) resolve()
}
link.onerror = reject
document.head.appendChild(link)
}),
addGlobalFn: (key, fn, name = false, parent = window) => {
if (!false && key.startsWith('pjax')) return
const globalFn = parent.globalFn || {}
globalFn[key] = globalFn[key] || {}
globalFn[key][name || Object.keys(globalFn[key]).length] = fn
parent.globalFn = globalFn
}
}
const activateDarkMode = () => {
document.documentElement.setAttribute('data-theme', 'dark')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#0d0d0d')
}
}
const activateLightMode = () => {
document.documentElement.setAttribute('data-theme', 'light')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#ffffff')
}
}
btf.activateDarkMode = activateDarkMode
btf.activateLightMode = activateLightMode
const theme = saveToLocal.get('theme')
theme === 'dark' ? activateDarkMode() : theme === 'light' ? activateLightMode() : null
const asideStatus = saveToLocal.get('aside-status')
if (asideStatus !== undefined) {
document.documentElement.classList.toggle('hide-aside', asideStatus === 'hide')
}
const detectApple = () => {
if (/iPad|iPhone|iPod|Macintosh/.test(navigator.userAgent)) {
document.documentElement.classList.add('apple')
}
}
detectApple()
})()
</script><link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Titillium+Web&display=swap" media="print" onload="this.media='all'"><script>const GLOBAL_CONFIG = {
root: '/',
algolia: undefined,
localSearch: undefined,
translate: undefined,
highlight: {"plugin":"highlight.js","highlightCopy":true,"highlightLang":true,"highlightHeightLimit":false,"highlightFullpage":false,"highlightMacStyle":false},
copy: {
success: '复制成功',
error: '复制失败',
noSupport: '浏览器不支持'
},
relativeDate: {
homepage: false,
post: false
},
runtime: '',
dateSuffix: {
just: '刚刚',
min: '分钟前',
hour: '小时前',
day: '天前',
month: '个月前'
},
copyright: undefined,
lightbox: 'null',
Snackbar: undefined,
infinitegrid: {
js: 'https://cdn.jsdelivr.net/npm/@egjs/infinitegrid@4.12.0/dist/infinitegrid.min.js',
buttonText: '加载更多'
},
isPhotoFigcaption: false,
islazyloadPlugin: false,
isAnchor: false,
percent: {
toc: true,
rightside: false,
},
autoDarkmode: false
}</script><script id="config-diff">var GLOBAL_CONFIG_SITE = {
title: 'Fisssssh-Blog',
isHighlightShrink: false,
isToc: false,
pageType: 'home'
}</script><!-- hexo injector head_end start --><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/Zfour/hexo-electric-clock@1.0.6/clock.css"><link rel="stylesheet" href="https://npm.elemecdn.com/hexo-butterfly-categories-card@1.0.0/lib/categorybar.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/Zfour/Butterfly-double-row-display@1.00/cardlistpost.min.css"/>
<style>#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap > .tags:before {content:"\A";
white-space: pre;}#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap > .tags > .article-meta__separator{display:none}</style>
<link rel="stylesheet" href="https://cdn.cbd.int/hexo-butterfly-clock-anzhiyu/lib/clock.min.css" /><!-- hexo injector head_end end --><meta name="generator" content="Hexo 8.1.1"></head><body><div id="loading-box"><div class="loading-left-bg"></div><div class="loading-right-bg"></div><div class="spinner-box"><div class="configure-border-1"><div class="configure-core"></div></div><div class="configure-border-2"><div class="configure-core"></div></div><div class="loading-word">加载中...</div></div></div><script>(()=>{
const $loadingBox = document.getElementById('loading-box')
const $body = document.body
const preloader = {
endLoading: () => {
if ($loadingBox.classList.contains('loaded')) return
$body.style.overflow = ''
$loadingBox.classList.add('loaded')
},
initLoading: () => {
$body.style.overflow = 'hidden'
$loadingBox.classList.remove('loaded')
}
}
preloader.initLoading()
if (document.readyState === 'complete') {
preloader.endLoading()
} else {
window.addEventListener('load', preloader.endLoading)
document.addEventListener('DOMContentLoaded', preloader.endLoading)
// Add timeout protection: force end after 7 seconds
setTimeout(preloader.endLoading, 7000)
}
if (false) {
btf.addGlobalFn('pjaxSend', preloader.initLoading, 'preloader_init')
btf.addGlobalFn('pjaxComplete', preloader.endLoading, 'preloader_end')
}
})()</script><div id="web_bg" style="background-image: url(/img/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20260129194914_252_13.jpg);"></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img text-center"><img src="/img/head.jpg" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="site-data text-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">5</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">0</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">0</div></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> 首页</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> 时间轴</span></a></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> 友链</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="full_page" id="page-header" style="background-image: url(/img/7826f5226736681238d58fddebde8b0e.jpg);"><nav id="nav"><span id="blog-info"><a class="nav-site-title" href="/"><span class="site-name">Fisssssh-Blog</span></a></span><div id="menus"><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> 首页</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> 时间轴</span></a></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> 友链</span></a></div></div><div id="toggle-menu"><span class="site-page"><i class="fas fa-bars fa-fw"></i></span></div></div></nav><div id="site-info"><h1 id="site-title">Fisssssh-Blog</h1><div id="site-subtitle"><span id="subtitle"></span></div></div><div id="scroll-down"><i class="fas fa-angle-down scroll-down-effects"></i></div></header><main class="layout" id="content-inner"><div class="recent-posts nc" id="recent-posts"><div class="recent-post-items"><div class="recent-post-item"><div class="post_cover left"><a href="/2025/11/23/First%20post/" title="本站第一条博客(置顶)"><img class="post-bg" src="/img/d23a7fe8a8160e662a0f68e32f12acd1.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="本站第一条博客(置顶)"></a></div><div class="recent-post-info"><a class="article-title" href="/2025/11/23/First%20post/" title="本站第一条博客(置顶)"><i class="fas fa-thumbtack sticky"></i>本站第一条博客(置顶)</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2025-11-23T08:23:00.000Z" title="发表于 2025-11-23 16:23:00">2025-11-23</time></span></div><div class="content">关于本博客本博客建立的目的 本博客建立是为了记录我本人,也就是Fisssssh,在CTF,文学,哲学以及其他方面的学习与交流过程,并将其更新在本博客上,与全国各地的师傅互相学习。因此,关于博客中出现的非专业用语或表示请多多包涵。另外,本人并非现在才开始学习此类东西,碍于博客建立的日期,后期会酌情补充相关内容,请敬请期待吧(笑) 关于Fisssssh 本人的ID为Fisssssh(五个s),是来自太原理工大学25级的一名新晋CTFer,目前正在UKFC的子队UKY中进行学习(期望未来可以进入主队),目前主攻web方向,希望能和本战队的队友以及素未谋面的师傅们一起学习进步。 我在2025年9月4日来到太原理工大学,面对新的大学生活,希望我可以用最积极的心态面对未来的挑战,同时我也对新的机遇充满期待,今后的有关见闻,我都会第一时间发布到我的博客上面,希望大家可以互相帮助与学习 关于我的ID 本人原ID为咸鱼体验(不知道有没有人之前见过我),取咸鱼的英文fish更改而成,寓意自然就是“咸鱼翻身”吧(笑) 关于本人的爱好 ...</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/2025/11/26/%E4%BD%A0%E7%BC%BA%E5%A4%B1%E7%9A%84%E9%82%A3%E9%97%A8%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%AF%BE/" title="你缺失的那门计算机课(持续更新)"><img class="post-bg" src="/img/5f5106950234ef21e6b024e25338fcf3.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="你缺失的那门计算机课(持续更新)"></a></div><div class="recent-post-info"><a class="article-title" href="/2025/11/26/%E4%BD%A0%E7%BC%BA%E5%A4%B1%E7%9A%84%E9%82%A3%E9%97%A8%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%AF%BE/" title="你缺失的那门计算机课(持续更新)"><i class="fas fa-thumbtack sticky"></i>你缺失的那门计算机课(持续更新)</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2025-11-26T15:17:14.000Z" title="发表于 2025-11-26 23:17:14">2025-11-26</time></span></div><div class="content">1234567891011121314151617本篇博客是基于作品《你缺失的那门计算机课》进行总结和导读旨在帮助真正意义上的电脑初学者快速上手电脑操作。本篇博客的结构将根据原作分为基础篇,软件篇和进阶篇等并且尽力在原作本就很简洁明了的描述上进行进一步的总结与压缩。本博客起于2025/11/26,并将持续更新...本博客采用 CC BY-NC-SA 4.0 协议许可。您可以在 https://creativecommons.org/licenses/by/4.0/deed.zh-hans 查看该许可的详细信息。原作:《你缺失的那门计算机课》网页版作者:Hans Wan 和 Windy Deng网址:https://www.criwits.top/missing以 CC BY-NC-SA 4.0 协议许可如有任何侵权,请联系本人立即删除!!! 序 在数字时代,熟练使用电脑是一项必备的生活技能,但现实中许多人却严重缺乏这方面的“常识”。尽管智能手机普及,电脑因其复杂性和不可替代性,其使用技能依然至关重要。 希望读者能以轻松、好奇的心态,通过本书掌握必...</div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/2025/11/23/UKY%E5%91%A8%E6%8A%A5/" title="UKY周报(完结)"><img class="post-bg" src="/img/9ad575f9f19896781142d83c5cc85a3c.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="UKY周报(完结)"></a></div><div class="recent-post-info"><a class="article-title" href="/2025/11/23/UKY%E5%91%A8%E6%8A%A5/" title="UKY周报(完结)">UKY周报(完结)</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2025-11-23T09:26:55.000Z" title="发表于 2025-11-23 17:26:55">2025-11-23</time></span></div><div class="content">10.27–11.2周本周复现了newstar2024的week1-week3,并且做了六道buu的题目,php代码审计偏多 对之前较为模糊的知识点进行了补充,如php伪协议,cookie的组成和部分php代码绕过等 1.如果直接传参名 NewStar_CTF.2024会发现并没有用。这是由 NewStar_CTF.2024 中的特殊字符 . 引起的,PHP 默认会将其解析为 NewStar_CTF_2024。可以使用 [ 字符的非正确替换漏洞。当传入的参数名中出现 [ 且之后没有 ] 时,PHP 会将 [ 替换为 _,但此之后就不会继续替换后面的特殊字符了因此,GET 传参 NewStar[CTF.2024即可 2.在git泄露类型题中,开发者会使用 git stash 来暂存未提交的更改。这些更改存储在 .git/objects 中,可以被恢复。在cd到指定的目录下,恢复出的仓库中,使用 git stash list 查看暂存列表。使用 git stash apply 应用暂存,查看暂存的内容。git stash pop还原文件 3....</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/2025/01/29/%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91%E6%97%A5%E8%AE%B0/" title="前端开发日记"><img class="post-bg" src="/img/9ad575f9f19896781142d83c5cc85a3c.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="前端开发日记"></a></div><div class="recent-post-info"><a class="article-title" href="/2025/01/29/%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91%E6%97%A5%E8%AE%B0/" title="前端开发日记">前端开发日记</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2025-01-29T11:39:55.000Z" title="发表于 2025-01-29 19:39:55">2025-01-29</time></span></div><div class="content">AI+前端学习笔记1.28项目链接https://modao.cc/proto/E4SLDLz6t9kg9lALFTnBc0/sharing?view_mode=read_only #未命名原型 3-分享 主要学习了墨刀的基本使用方法并基于墨刀搭建了一个视频播放网站界面 划分为“首页”“关注”“会员购”“我的”四个板块 1.首页头部设有头像,搜索框,设置图标 然后就是轮播图,视频可以自由上下翻页 页面底部增添了导航页,可以导航至其他页面 2.关注关注页面可以滑动,动态页面可以滑动 3.会员购 3.我的页面支持修改个人信息,头像文件上传, 单击“保存”后显示“已更新”的toast效果并返回页面 </div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/2025/01/29/UKFC%E6%97%A5%E5%BF%97/" title="UKFC日志(持续更新)"><img class="post-bg" src="/img/9ad575f9f19896781142d83c5cc85a3c.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="UKFC日志(持续更新)"></a></div><div class="recent-post-info"><a class="article-title" href="/2025/01/29/UKFC%E6%97%A5%E5%BF%97/" title="UKFC日志(持续更新)">UKFC日志(持续更新)</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2025-01-29T11:34:55.000Z" title="发表于 2025-01-29 19:34:55">2025-01-29</time></span></div><div class="content">第12.29–1.4周本周深入练习了一下反序列化,学会了很多绕过的方法的技巧,同时还对php的几乎每一种魔术方法进行了深入了解,补全了之前很多欠缺的知识,靶场同样还是用的CTFshow 先粘一下从大佬博客那里偷过来的魔术方法总结() 123456789101112131415161718192021222324252627282930313233343536__construct()类的构造函数__destruct()类的析构函数__call()在对象中调⽤⼀个不可访问⽅法时调⽤__callStatic()⽤静态⽅式中调⽤⼀个不可访问⽅法时调⽤__get()获得⼀个类的成员变量时调⽤__set()设置⼀个类的成员变量时调⽤__isset()当对不可访问属性调⽤isset()或empty()时调⽤__unset()当对不可访问属性调⽤unset()时被调⽤。__sleep(),执⾏serialize()时,先会调⽤这个函数__wakeup()执⾏unserialize()时,先会调⽤这个函数__toString()类被当成字符串时的回应⽅法__invoke()调⽤函数的⽅式调⽤⼀个...</div></div></div></div></div><div class="aside-content" id="aside-content"><div class="card-widget card-info text-center"><div class="avatar-img"><img src="/img/head.jpg" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info-name">fisssssh</div><div class="author-info-description">一个热爱编程与艺术的博客,分享技术见解与创意灵感。</div><div class="site-data"><a href="/archives/"><div class="headline">文章</div><div class="length-num">5</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">0</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">0</div></a></div><a id="card-info-btn" target="_blank" rel="noopener" href="https://github.com/xxxxxx"><i class="fab fa-github"></i><span>Follow Me</span></a></div><div class="card-widget card-announcement"><div class="item-headline"><i class="fas fa-bullhorn fa-shake"></i><span>公告</span></div><div class="announcement_content">欢迎来到我的个人博客,探索文学与艺术的精彩世界!!!</div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item"><a class="thumbnail" href="/2025/11/26/%E4%BD%A0%E7%BC%BA%E5%A4%B1%E7%9A%84%E9%82%A3%E9%97%A8%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%AF%BE/" title="你缺失的那门计算机课(持续更新)"><img src="/img/5f5106950234ef21e6b024e25338fcf3.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="你缺失的那门计算机课(持续更新)"/></a><div class="content"><a class="title" href="/2025/11/26/%E4%BD%A0%E7%BC%BA%E5%A4%B1%E7%9A%84%E9%82%A3%E9%97%A8%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%AF%BE/" title="你缺失的那门计算机课(持续更新)">你缺失的那门计算机课(持续更新)</a><time datetime="2025-11-26T15:17:14.000Z" title="发表于 2025-11-26 23:17:14">2025-11-26</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/2025/11/23/UKY%E5%91%A8%E6%8A%A5/" title="UKY周报(完结)"><img src="/img/9ad575f9f19896781142d83c5cc85a3c.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="UKY周报(完结)"/></a><div class="content"><a class="title" href="/2025/11/23/UKY%E5%91%A8%E6%8A%A5/" title="UKY周报(完结)">UKY周报(完结)</a><time datetime="2025-11-23T09:26:55.000Z" title="发表于 2025-11-23 17:26:55">2025-11-23</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/2025/11/23/First%20post/" title="本站第一条博客(置顶)"><img src="/img/d23a7fe8a8160e662a0f68e32f12acd1.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="本站第一条博客(置顶)"/></a><div class="content"><a class="title" href="/2025/11/23/First%20post/" title="本站第一条博客(置顶)">本站第一条博客(置顶)</a><time datetime="2025-11-23T08:23:00.000Z" title="发表于 2025-11-23 16:23:00">2025-11-23</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/2025/01/29/%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91%E6%97%A5%E8%AE%B0/" title="前端开发日记"><img src="/img/9ad575f9f19896781142d83c5cc85a3c.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="前端开发日记"/></a><div class="content"><a class="title" href="/2025/01/29/%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91%E6%97%A5%E8%AE%B0/" title="前端开发日记">前端开发日记</a><time datetime="2025-01-29T11:39:55.000Z" title="发表于 2025-01-29 19:39:55">2025-01-29</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/2025/01/29/UKFC%E6%97%A5%E5%BF%97/" title="UKFC日志(持续更新)"><img src="/img/9ad575f9f19896781142d83c5cc85a3c.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="UKFC日志(持续更新)"/></a><div class="content"><a class="title" href="/2025/01/29/UKFC%E6%97%A5%E5%BF%97/" title="UKFC日志(持续更新)">UKFC日志(持续更新)</a><time datetime="2025-01-29T11:34:55.000Z" title="发表于 2025-01-29 19:34:55">2025-01-29</time></div></div></div></div><div class="card-widget card-archives">
<div class="item-headline">
<i class="fas fa-archive"></i>
<span>归档</span>
</div>
<ul class="card-archive-list">
<li class="card-archive-list-item">
<a class="card-archive-list-link" href="/archives/2025/11/">
<span class="card-archive-list-date">
十一月 2025
</span>
<span class="card-archive-list-count">3</span>
</a>
</li>
<li class="card-archive-list-item">
<a class="card-archive-list-link" href="/archives/2025/01/">
<span class="card-archive-list-date">
一月 2025
</span>
<span class="card-archive-list-count">2</span>
</a>
</li>
</ul>
</div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>网站信息</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">文章数目 :</div><div class="item-count">5</div></div><div class="webinfo-item"><div class="item-name">本站总字数 :</div><div class="item-count">32.2k</div></div><div class="webinfo-item"><div class="item-name">本站访客数 :</div><div class="item-count" id="busuanzi_value_site_uv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站总浏览量 :</div><div class="item-count" id="busuanzi_value_site_pv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">最后更新时间 :</div><div class="item-count" id="last-push-date" data-lastPushDate="2026-01-29T11:55:57.297Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div></div></div></div></div></main><footer id="footer" style="background-image: url(https://bucketqiao123456.oss-cn-beijing.aliyuncs.com/377ec826784fcf748ad292817f5d9423.jpg);"><div class="footer-other"><div class="footer-copyright"><span class="copyright">© 2025 - 2026 By fisssssh</span><span class="framework-info"><span>框架 </span><a target="_blank" rel="noopener" href="https://hexo.io">Hexo 8.1.1</a><span class="footer-separator">|</span><span>主题 </span><a target="_blank" rel="noopener" href="https://github.com/jerryc127/hexo-theme-butterfly">Butterfly 5.5.2</a></span></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="日间和夜间模式切换"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="单栏和双栏切换"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside-config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到顶部"><span class="scroll-percent"></span><i class="fas fa-arrow-up"></i></button></div></div><div><script src="/js/utils.js?v=5.5.2"></script><script src="/js/main.js?v=5.5.2"></script><div class="js-pjax"><script>window.typedJSFn = {
init: str => {
window.typed = new Typed('#subtitle', Object.assign({
strings: str,
startDelay: 300,
typeSpeed: 150,
loop: true,
backSpeed: 50,
}, null))
},
run: subtitleType => {
if (true) {
if (typeof Typed === 'function') {
subtitleType()
} else {
btf.getScript('https://cdn.jsdelivr.net/npm/typed.js@2.1.0/dist/typed.umd.min.js').then(subtitleType)
}
} else {
subtitleType()
}
},
processSubtitle: (content, extraContents = []) => {
if (true) {
const sub = ["窗外有月色和雨,而我在想你。","There is moonlight and rain outside the window, and I miss you.","窗外有月色和雨,而我在想你","La luz de la luna y la lluvia están fuera de la ventana, y te extraño.","在远方的荒野里,提到你的名字它们都饱含敬畏和惋惜之情","在最苍白的注视下,你教授、改变。本能得到了救赎","你赋予了我们珍贵的梦境,还不断给予","You give us precious dreams and keep giving.","我们从他的痛苦中看到一个必须承认的真相,因为只有完美的空虚才能将它容纳"].slice()
if (extraContents.length > 0) {
sub.unshift(...extraContents)
}
if (typeof content === 'string') {
sub.unshift(content)
} else if (Array.isArray(content)) {
sub.unshift(...content)
}
sub.length > 0 && typedJSFn.init(sub)
} else {
document.getElementById('subtitle').textContent = typeof content === 'string' ? content :
(Array.isArray(content) && content.length > 0 ? content[0] : '')
}
}
}
btf.addGlobalFn('pjaxSendOnce', () => { typed.destroy() }, 'typedDestroy')
</script><script>function subtitleType () {
typedJSFn.processSubtitle(["窗外有月色和雨,而我在想你。","There is moonlight and rain outside the window, and I miss you.","窗外有月色和雨,而我在想你","La luz de la luna y la lluvia están fuera de la ventana, y te extraño.","在远方的荒野里,提到你的名字它们都饱含敬畏和惋惜之情","在最苍白的注视下,你教授、改变。本能得到了救赎","你赋予了我们珍贵的梦境,还不断给予","You give us precious dreams and keep giving.","我们从他的痛苦中看到一个必须承认的真相,因为只有完美的空虚才能将它容纳"])
}
typedJSFn.run(subtitleType)</script></div><script defer src="/live2d-widget/autoload.js"></script><script defer="defer" id="fluttering_ribbon" mobile="true" src="https://cdn.jsdelivr.net/npm/butterfly-extsrc@1.1.6/dist/canvas-fluttering-ribbon.min.js"></script><script async data-pjax src="/"></script></div><!-- hexo injector body_end start --><script data-pjax>function electric_clock_injector_config(){
var parent_div_git = document.getElementsByClassName('sticky_layout')[0];
var item_html = '<div class="card-widget card-clock"><div class="card-glass"><div class="card-background"><div class="card-content"><div id="hexo_electric_clock"><img id="card-clock-loading" src="https://cdn.jsdelivr.net/gh/Zfour/Butterfly-clock/clock/images/weather/loading.gif" style="height: 120px; width: 100%;" data-ll-status="loading" class="entered loading"></div></div></div></div></div>';
console.log('已挂载electric_clock')
// parent_div_git.innerHTML=item_html+parent_div_git.innerHTML // 无报错,但不影响使用(支持pjax跳转)
parent_div_git.insertAdjacentHTML("afterbegin",item_html) // 有报错,但不影响使用(支持pjax跳转)
}if( document.getElementsByClassName('sticky_layout')[0] && (location.pathname ==='all'|| 'all' ==='all')){
electric_clock_injector_config()
} </script><script src="https://pv.sohu.com/cityjson?ie=utf-8"></script><script data-pjax src="https://cdn.jsdelivr.net/gh/Zfour/hexo-electric-clock@1.0.6/clock.js"></script><script data-pjax>
function butterfly_categories_card_injector_config(){
var parent_div_git = document.getElementById('recent-posts');
var item_html = '<style>li.categoryBar-list-item{width:32.3%;}.categoryBar-list{max-height: 190px;overflow:auto;}.categoryBar-list::-webkit-scrollbar{width:0!important}@media screen and (max-width: 650px){.categoryBar-list{max-height: 160px;}}</style><div class="recent-post-item" style="height:auto;width:100%;padding:0px;"><div id="categoryBar"><ul class="categoryBar-list"></ul></div></div>';
console.log('已挂载butterfly_categories_card')
parent_div_git.insertAdjacentHTML("afterbegin",item_html)
}
if( document.getElementById('recent-posts') && (location.pathname ==='/'|| '/' ==='all')){
butterfly_categories_card_injector_config()
}
</script><script data-pjax>
function butterfly_clock_anzhiyu_injector_config(){
var parent_div_git = document.getElementsByClassName('sticky_layout')[0];
var item_html = '<div class="card-widget card-clock"><div class="card-glass"><div class="card-background"><div class="card-content"><div id="hexo_electric_clock"><img id="card-clock-loading" src="https://cdn.jsdelivr.net/gh/Zfour/Butterfly-clock/clock/images/weather/loading.gif" style="height: 120px; width: 100%;" data-ll-status="loading" class="entered loading"></div></div></div></div></div>';
console.log('已挂载butterfly_clock_anzhiyu')
if(parent_div_git) {
parent_div_git.insertAdjacentHTML("afterbegin",item_html)
}
}
var elist = 'undefined'.split(',');
var cpage = location.pathname;
var epage = 'all';
var qweather_key = 'b16a1fa0e63c46a4b8f28abfb06ae3fe';
var qweather_api_host = 'nj6r6pm8pt.re.qweatherapi.com';
var ip_api_key = 'Kq1pRjB3WyDja7rhKcWV9f5QU8';
var gaud_map_key = 'e2b04289e870b005374ee030148d64fd&s=rsv3';
var baidu_ak_key = 'undefined';
var flag = 0;
var clock_rectangle = '112.6534116,27.96920845';
var clock_default_rectangle_enable = 'false';
for (var i=0;i<elist.length;i++){
if (cpage.includes(elist[i])){
flag++;
}
}
if ((epage ==='all')&&(flag == 0)){
butterfly_clock_anzhiyu_injector_config();
}
else if (epage === cpage){
butterfly_clock_anzhiyu_injector_config();
}
</script><script data-pjax src="https://cdn.cbd.int/hexo-butterfly-clock-anzhiyu/lib/clock.min.js"></script><!-- hexo injector body_end end --></body></html>