-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsearch.xml
More file actions
241 lines (231 loc) · 30.1 KB
/
search.xml
File metadata and controls
241 lines (231 loc) · 30.1 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
<?xml version="1.0" encoding="utf-8"?>
<search>
<entry>
<title>2023回顾</title>
<url>/2024/01/01/annual-report/</url>
<content><![CDATA[<p>在洗澡的时候,一个(可能是)曾经看过的故事小片段突然从我脑海里蹦出来。</p>
<blockquote>
<p>“小男孩站在岸边,对岸是正在狂欢的人们,升起的篝火模糊了他们的身影。“他们就是大人么?”小孩子问,“在那个岛上的大人看起来都好自由,好快乐,我什么时候才可以也去到对面那座岛上呢”。 而我看着对岸跃动的虚影,只能静默无言。”</p>
</blockquote>
<p> 有点感觉以前的自己就像是那个孩子,总是期盼着变成大人,可以独当一面。但是,对岸的世界就真的很幸福吗?在即将踏入二十岁的这一年,面对以前的自己的提问,仍有许多还是不知道如何解答。</p>
<p> 有些跑题了。2023的这一年,对于我来说可以以转专业考试为界,划出一条泾渭分明的线出来,这两块时间感觉度过得真的完全不一样。上半年的新年去了从未去过的国家首都中心,见识了许多从未见过的景色。开学后便在推迟的期末考与新开课中忙里忙乱地度过了自己的19岁生日。之后的三月有别扭的落寞,也有婚礼的热闹。第一次所见的深圳湾以及会让人的机动车惊艳了我的四月,却殊不知之后将会有无数次匆匆忙忙的往返,在深圳与广州之间。五月份大抵是最充实的一个月,不仅有在五一出游前一天便截止的转专业资料提交,还有站在东方明珠与外滩旁对于历史回环的感叹,也有去到珠海校区,面对大海的大脑空白。更重要的还是转专业的考试和面试终于还是有惊无险地通过,这一届果真是勇敢者的游戏,虽然选择了降级,但也为下半年的颓废埋下了伏笔。六月的期末,第一次尝试为了考试熬夜到凌晨四点(以后大概也不会再有了),陪着邵邵也度过了他的毕业典礼。</p>
<p> 如果今年在上半年就结束,那我会今年的评价肯定还会在及格线以上,但自从六月之后,先前的掌控感与获得感消失了,取而代之的是自己完全没有掌控的后半年,确实是遗憾连连。本打算大干一场的暑假最终也不了了之,并没有学会什么东西,或是掌握一项新,开学后虽然也成功成为了班干,也打上了工,但是开学一个月后的那个手术却直接吃掉了将近半个学期,(虽然确实是自己的问题,没有好好利用好这一段独处的时间。)在短视频与刷手机的消耗中度过了10月和11月半,成功回校后,接着的一个月也没怎么好好利用,更加糟糕的是,自从患病后自己就仿佛陷入了对于健康的无限焦虑,总是担忧自己的健康状态,以及对于自己身体的一举一动都极度多疑敏感,直到年末那段时间,有了些许社交之后才有减轻。也因为这个耗费了不少精力。现在想来还真是遗憾。</p>
<p> 当然,在后半年还是有一些闪光点的,比如说在原学院顺利以之前的绩点从学校手中抠出了3000元,12 月末折腾(摆)了一年的大创也终于结题了,还小小拿了个优秀。但这些都是之前埋下的因种出的果,在新的因上面,自从转入了之后就好似原地踏步,除了linux长进了一点点,部署了一个arch系统,靠着模板还有教程建起了一个小博客,其他的技术方面的没有什么大的进步,也没有做出来自己心目中特别酷的东西。许多东西半途而费,诸如学习一门新的语言,继续学习钢琴,在日复一日的生活中也终究没了回音.</p>
<p> 我的性格特别怪,感觉就是一个扭曲的混合体,会总是贪婪地希望新一天会比旧的一天更加进步,却总是会在每晚用遗憾来回应昨日的希望。会在晚上看着厉害的人心生敬仰,多少次发誓从明天开始就认真起来,开始努力,而到了第二天早上却连早八起床也错过。其实到后来,我也时常会想:如果下半年是健健康康,没出什么岔子,那么今年下半年自己还会进步吗?好似也未必会,毕竟性格使然,总是无法回应那个昨天带着期盼的自己。</p>
<p> 在23年初列出的期望表, 至今都不敢回看。在去年五月做出降级的决定时,还希望借着降级给自己多一些时间思考,来想清楚自己到底想要干什么,未来是要成为什么样的人,但是在新的一年回望,我遗憾地发现自己似乎还是没法完整回答出这个问题,有时候真的好羡慕一些找到了方向的人们,候鸟虽年年辛苦南飞,但是不可否认的! 们有目的地,应当是幸福的。而我现在只有前方许模糊的色块,南飞地尚且遥远。往更高的方向向上前进,见到更高的风景还是在现在的糟糕的现实中安居一隅,过好精简的生活,哪个才是最终的方向仍然值得自己继续探寻。但是以自己的心性,还是希望可以去到更高的地方的,毕竟性格就是个很喜欢鼓捣新新奇奇怪的东西,搞清楚事情背后的杠精型人格嘛。 </p>
<p> 现在想来,开篇中故事中的对岸其实一直都存在,只不过每当我们到达一个对岸时,另一个对岸又会若隐若现地浮现出来,并且展现地更加诱人,可能人们都会对当下一成不变又一事无成的现实感到不满,又会对那充满想象的未来对岸心生向往,人生就是个巨大的轮回。害,如果真是如此,那么还是不如趁着现在享受当下的每时每刻。少内耗多做事,慢慢一点一滴把自己也尽量塑造成想成为的样子。或许会更好吧。 </p>
<p> 还是要在最后感谢2023一年中所有帮助过我的朋友,师兄师姐还有老师们。去年的一年如果离开了你们我将不会过的如此顺遂,感谢你们包容仍不成熟的我。也对所有去年可能打扰或者带来伤害的人们说声抱歉。很多时候虽然坚持着假设善意原则,盼望自己可以be nice to anyone.但也知自己待人处事远没有达到加入对岸大人的标准,还请海涵… </p>
<p> 希望在新的2024年,自己可以更好地回答出之前给出的问题:往后人生到底想要干什么,未来要成为什么样的人。在现在的作答是:在漫漫的时间长河中也至少做一个可以正向影响别人的,不作恶的普通人,可以保护自己所爱的人,可以给别人留下点。在现在的作答是:在漫漫的时间长河中, 也至少做一个可以正向影响别人的,不作恶的普通人,可以保护自己所爱的人,可以给别人留下点什么的人。如果能在这个基础上又更进一步,那善莫大焉!</p>
<p> <img
lazyload
src="/images/loading.svg"
data-src="/images/annual_report/IMG_20230101_122742.jpg"
alt="摄于2023.1.1,岭南堂"
><br> 摄于2023.1.1,岭南堂<br> <img
lazyload
src="/images/loading.svg"
data-src="/images/annual_report/IMG_20231231_234340.jpg"
alt="摄于2023.12.31,北门牌坊"
><br> 摄于2023.12.31,北门牌坊</p>
]]></content>
<tags>
<tag>report</tag>
</tags>
</entry>
<entry>
<title>计网扫盲与速通</title>
<url>/2025/04/03/network/</url>
<content><![CDATA[<p>先祭出七层和五层模型:</p>
<p><img
lazyload
src="/images/loading.svg"
data-src="/images/network/1.jpg"
></p>
<h2 id="物理层(网线与电子元件在这一层)"><a href="#物理层(网线与电子元件在这一层)" class="headerlink" title="物理层(网线与电子元件在这一层)"></a>物理层(网线与电子元件在这一层)</h2><p>通用有线网网卡插口为RJ45,连接线为双绞线</p>
<ul>
<li>交叉线:相同类型设备连接,线序不同,一端水晶头为 568A 另一端为 568B(568B 线序:橙白/橙/绿白/蓝/蓝白/绿/棕白/棕</li>
<li>直通线:不同类型设备连接,两端都是568B<br>类型分类:CAT 1-7;CAT 5:100Mbits/s(百兆线);CAT6:1000Mbits/s(千兆线)CAT-7:10000Mbits/s</li>
</ul>
<h2 id="链路层(网口,MAC在这一层)"><a href="#链路层(网口,MAC在这一层)" class="headerlink" title="链路层(网口,MAC在这一层)"></a>链路层(网口,MAC在这一层)</h2><p>传输数据为以太网帧</p>
<blockquote>
<p>一帧会以一系列规定好的前导比特序列开始,用来告知一帧的开始和同步通信双方速率(可以理解成同步时钟)。之后就是以太网帧的正式内容。<br><strong>注意,在链路上的所有计算机都可以侦听到传输的以太网帧</strong></p>
</blockquote>
<p>MAC地址(xx:xx:xx:xx:xx:xx):用来确定数据是否发给自己的,如果不是就丢弃,否则就接收,并将数据存放到缓冲区,或者 DMA 到内存中,并发出一个<strong>硬件中断</strong>通知 CPU 自己收到了数据</p>
<ul>
<li><strong>广播地址</strong>:FF:FF:FF:FF:FF:FF</li>
<li><strong>组播地址</strong>:01:xx:xx:xx:xx:xx<br> 这俩接受到都会认为是发送给自己的,具体区别网络层再说</li>
</ul>
<p><strong>MAC 地址是在链路层中寻址的根据。</strong><br>交换机如何知道哪个端口是哪个 MAC 地址:<strong>MAC 地址表</strong>(记录地址<==>物理网口,有自学习机制,可以记录数据帧与端口的对应)</p>
<p><strong>广播风暴</strong>:若多个交换机形成环路会引发广播风暴,要配置<strong>生成树</strong>协议避免环路形成(图论最有用的一集)</p>
<h2 id="网络层(主机,IP协议在这一层)"><a href="#网络层(主机,IP协议在这一层)" class="headerlink" title="网络层(主机,IP协议在这一层)"></a>网络层(主机,IP协议在这一层)</h2><p>为什么需要IP:互相通信的两个网口,可能在链路层上没有直接连接到一起,这时候就需要另外一层协议来连接这些不同的<strong>子网</strong>(链路层上可以直接互相通信的网络),可以使用tcpdump来抓包。</p>
<p><img
lazyload
src="/images/loading.svg"
data-src="/images/network/2.png"
><br><strong>子网掩码</strong>:<strong>子网掩码</strong>中二进制位为 1 代表对应的地址中的位为<strong>网络号</strong>,为 0 代表对应的地址中的位为<strong>主机号。</strong> 由前半段连续的1与后半段连续的0组成,<strong>1之前不能出现0</strong>,他定义了一个子网里可以有多少机器。</p>
<blockquote>
<p>例:255.255.255.0<==>11111111.11111111.11111111.00000000<br>子网的网络号有 24 位长,主机号有 8 位长,可以放下 256 - 2 = 254 台主机<br>对于IP:192.168.1.233 255.255.255.0 可以写成 192.168.1.233/24,后面的 24 意思是子网掩码前 24 位是 1 后面全 0。这种方法叫 CIDR 表示法。</p>
</blockquote>
<p>不同的程序进行通信需要使用端口号来进行识别,如果说IP是房子那么端口就是房子的门,由 Internet 端口号分配机构(Internet Assigned Numbers Authority,IANA)来管理,编号 0 ~ 1023 为 <strong>系统端口号</strong>(系统保留),编号 1024 ~ 49151 为<strong>登记端口号</strong>(登记使用),编号 49152 ~ 65535 为<strong>短暂端口号</strong>(短暂使用,用完释放)常见的端口即协议对应按照下面展示:</p>
<ul>
<li>SSH 22</li>
<li>FTP 20 和 21</li>
<li>Telnet 23</li>
<li>SMTP 25</li>
<li>TFTP 69</li>
<li>HTTP 80</li>
<li>SNMP 161</li>
<li>Ping 使用 ICMP,无具体端口号</li>
</ul>
<p>接下来对于网络通信非常重要的两个表</p>
<h3 id="路由表"><a href="#路由表" class="headerlink" title="路由表"></a>路由表</h3><p>准备发送 IP 包的时候,会去查询路由表,长下面这样子:</p>
<p><img
lazyload
src="/images/loading.svg"
data-src="/images/network/3.png"
></p>
<p>传送路径:查路由表==>匹配后看下一跳==>如果是在链路上/onlink(同一子网):直接发局域网后转发;如果是IP地址:封装一个目的 IP 是原来的目的地址的 IP 包,下一跳 IP 设备对应的 MAC 地址的以太网帧,发送到局域网内(这就是路由)==>到下一跳后重复执行</p>
<p>默认网关:只是在路由表里添加一条不认识的 IP 直接发给它的路由表项而已,所以不填也行,只是就不能上网了(算是网络进出的门口)</p>
<h3 id="ARP表:"><a href="#ARP表:" class="headerlink" title="ARP表:"></a>ARP表:</h3><p>把MAC和IP地址对应起来的表</p>
<ul>
<li>ARP请求:“请告诉我 172.18.187.254 这个 IP 对应的 MAC 地址是多少”(源:自己MAC,目标:FF-FF-FF-FF-FF-FF)</li>
<li>ARP回应:目标电脑看到了回“172.18.187.254 在 e4-a8-b6-96-6f-83”</li>
</ul>
<h3 id="单播、组播与广播"><a href="#单播、组播与广播" class="headerlink" title="单播、组播与广播"></a>单播、组播与广播</h3><ul>
<li>单播:一次和一台主机进行通信</li>
<li>广播:地址就是主机号二进制位全为 1 的 IP 地址,操作系统会自动填上 MAC 地址 FF-FF-FF-FF-FF-FF 广播出去</li>
<li><strong>组播</strong>:地址为 224.0.0.0/4,操作系统会自动生成 01-xx-xx-xx-xx-xx 的组播地址发送到局域网内。组播就像微信群聊,谁往组播地址发东西,整个群的人都会收到,但没加群的人收不到。</li>
</ul>
<p>在一个没有内部 DNS 的网络里,我们想通过主机名和局域网里其他主机通信会用到组播和mDNS</p>
<h3 id="传输层(进程,TCP-UDP协议在这一层)"><a href="#传输层(进程,TCP-UDP协议在这一层)" class="headerlink" title="传输层(进程,TCP/UDP协议在这一层)"></a>传输层(进程,TCP/UDP协议在这一层)</h3><blockquote>
<p>链路层通过 MAC 地址标识网口,网络层通过 IP 标识设备,而传输层通过端口号来标识进程(差不多到操作系统的层面了)。</p>
</blockquote>
<ul>
<li><p>UDP: 对 IP 的一个简单封装,相当于在 IP 包上加了端口号,表现的特性跟 IP 是一样,都是不可靠的、尽力而为(Best Effort)的</p>
</li>
<li><p>TCP:通过建立虚拟连接的方式,在不可靠的 IP 网上提供了可靠的传输服务。(错误可以及时通知对方)</p>
<ul>
<li><img
lazyload
src="/images/loading.svg"
data-src="/images/network/4.png"
></li>
<li>三次握手与四次挥手 </li>
<li><img
lazyload
src="/images/loading.svg"
data-src="/images/network/5.png"
></li>
<li><img
lazyload
src="/images/loading.svg"
data-src="/images/network/6.png"
></li>
<li>收发双方共同维护一段窗口,用来暂存数据包。发送方的发送窗口存的是发送了但是没有确认的数据包,接收方的接收窗口用来存放乱序的数据包或者是还没来得及交给上层处理的数据包。</li>
<li>收发数据时发送方会对数据标序号,以便判断与触发重传机制(可靠吧~)</li>
<li>TCP <strong>没有</strong>显式重传的机制(接收方<strong>不能主动</strong>要求对方重传某一段数据)</li>
</ul>
</li>
</ul>
<h3 id="应用层(HTTP-HTTPS-FTP-TFTP-等协议在这一层)"><a href="#应用层(HTTP-HTTPS-FTP-TFTP-等协议在这一层)" class="headerlink" title="应用层(HTTP/HTTPS/FTP/TFTP 等协议在这一层)"></a>应用层(HTTP/HTTPS/FTP/TFTP 等协议在这一层)</h3><ul>
<li>TFTP(Trivial FTP):基于 UDP 的文件传输协议,采用<strong>停等协议</strong>(发送一个数据包,等到对方回复确认收到了之后才会继续发送下一个数据包。)优点是实现简单,缺点是浪费带宽。适合在没有操作系统与嵌入式设备进行传输</li>
<li>正向代理(Shadowsocks,V2Ray,Clash):用来使防火墙内部的客户端,连接到防火墙外部,对外隐藏客户端真实 IP,也即对客户端请求做 SNAT,请求目的地址不变,一般不解析应用协议,而是直接转发 TCP/UDP 流量。</li>
<li>反向代理(nginx、HAProxy )用来使防火墙外部的客户端,连接到防火墙内部服务器,对外隐藏服务器真实 IP,也即对客户端请求做 DNAT,请求源地址不变,通常会解析应用层协议并做进一步转发判断处理。对于 TLS 连接,是由反向代理提供证书的。</li>
<li>HTTP: 用于传输超文本(如网页、图片、视频等)的<strong>核心通信协议</strong>。它定义了客户端(如浏览器)和服务器之间如何交换数据,又是一个超级巨无霸的知识点,可能会再开一篇聊聊</li>
</ul>
]]></content>
</entry>
<entry>
<title>hexo建站小记</title>
<url>/2025/03/13/new-step/</url>
<content><![CDATA[<p>之前有尝试使用过白嫖阿里云服务器部署WordPress,用宝塔面板部署镜像等等,但那个时候对于网络前后端啥的一无所知,现在学了一点点知识了,就用这个建站当实践吧</p>
<blockquote>
<p>那些学了又忘,忘了又学的东西,应该好好记下来</p>
</blockquote>
<h2 id="Step1:建站"><a href="#Step1:建站" class="headerlink" title="Step1:建站"></a>Step1:建站</h2><p>若你的世界一无所有,请先获得改造世界的工具:</p>
<ul>
<li>安装git</li>
<li>安装Node.js</li>
</ul>
<p>必备程序安装完后,使用npm包管理安装Hexo</p>
<div class="code-container" data-rel="Bash"><figure class="iseeu highlight bash"><table><tr><td class="code"><pre><span class="line">npm install -g hexo-cli</span><br><span class="line"></span><br><span class="line">%% 可局部安装hexo包 %%</span><br><span class="line"> npm install hexo</span><br><span class="line"> <span class="built_in">echo</span> <span class="string">'PATH="$PATH:./node_modules/.bin"'</span> >> ~/.profile</span><br><span class="line"> npx hexo <<span class="built_in">command</span>></span><br></pre></td></tr></table></figure></div>
<p>使用以下命令在Hexo文件夹新建所需文件:</p>
<div class="code-container" data-rel="Bash"><figure class="iseeu highlight bash"><table><tr><td class="code"><pre><span class="line">hexo init <folder> </span><br><span class="line"><span class="built_in">cd</span> <folder> </span><br><span class="line">npm install</span><br></pre></td></tr></table></figure></div>
<p>初始化后,您的项目文件夹将如下所示</p>
<ul>
<li><strong>config.yml</strong><ul>
<li>网站的 <a class="link" href="https://hexo.io/zh-cn/docs/configuration" >配置<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a> 文件。 您可以在此配置大部分的参数,很重要。</li>
</ul>
</li>
<li><strong>package.json</strong><br>应用程序的信息。 <a class="link" href="https://ejs.co/" >EJS<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a>, <a class="link" href="http://learnboost.github.io/stylus/" >Stylus<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a> 和 <a class="link" href="http://daringfireball.net/projects/markdown/" >Markdown<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a> 渲染引擎 已默认安装,您可以自由移除。 如果您想,可以稍后卸载它们。</li>
<li><strong>scaffolds</strong><br>【模版](<a class="link" href="https://hexo.io/zh-cn/docs/writing#%E6%A8%A1%E7%89%88%EF%BC%88Scaffold%EF%BC%89" >https://hexo.io/zh-cn/docs/writing#%E6%A8%A1%E7%89%88%EF%BC%88Scaffold%EF%BC%89<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a>) 文件夹。 当您新建文章时,Hexo 会根据 scaffold 来创建文件。</li>
<li><strong>source</strong><br>资源文件夹。 是存放用户资源的地方。 除 <code>_posts</code> 文件夹之外,开头命名为 <code>_</code> (下划线)的文件 / 文件夹和隐藏的文件将会被忽略。 Markdown 和 HTML 文件会被解析并放到 <code>public</code> 文件夹,而其他文件会被拷贝过去。</li>
<li><strong>themes</strong><br><a class="link" href="https://hexo.io/zh-cn/docs/themes" >主题<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a> 文件夹。 Hexo 会根据主题来生成静态页面。</li>
</ul>
<p>执行:</p>
<div class="code-container" data-rel="Bash"><figure class="iseeu highlight bash"><table><tr><td class="code"><pre><span class="line">hexo clean && hexo generate && hexo sever</span><br></pre></td></tr></table></figure></div>
<p>你应该可以使用<a class="link" href="http://localhost:4000/" >http://localhost:4000/<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a> 来查看本地网页<br>如果想要部署到github上,请看后文</p>
<h2 id="Step2:安装主题"><a href="#Step2:安装主题" class="headerlink" title="Step2:安装主题"></a>Step2:安装主题</h2><p>我们选用ShokaX,一个已经停止维护的Shoka主题的精神续作,有着非常好的文档和[中文配置教程](<a class="link" href="https://hexo.docs.shokax.top/getting-started/" >安装 ShokaX | ShokaX Docs<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a>)</p>
<p>要注意一下如果pnpm报错<code>ERR_PNPM_NO_GLOBAL_BIN_DIR Unable to find the global bin directory</code>就跟着指引pnpm setup就好,然后开个<strong>新终端</strong>重新输入命令</p>
<p>在最后一步创建软连接的时候,如果你是Windows用户并且用powershell,请使用:</p>
<div class="code-container" data-rel="Powershell"><figure class="iseeu highlight powershell"><table><tr><td class="code"><pre><span class="line">cmd /c mklink /J .\themes\shokax .\node_modules\hexo<span class="literal">-theme-shokax</span></span><br></pre></td></tr></table></figure></div>
<p><del>如果不想折磨自己还是建议用开箱即食can,自己配置很容易有各种奇奇怪怪问题浪费时间</del></p>
<h3 id="Step3:配置github-io"><a href="#Step3:配置github-io" class="headerlink" title="Step3:配置github.io"></a>Step3:配置github.io</h3><p>修改_config.yml中的deploy项:</p>
<div class="code-container" data-rel="Yml"><figure class="iseeu highlight yml"><table><tr><td class="code"><pre><span class="line"><span class="attr">deploy:</span></span><br><span class="line"> <span class="attr">type:</span> <span class="string">git</span></span><br><span class="line"> <span class="attr">repo:</span> <span class="string"><your</span> <span class="string">repo></span></span><br><span class="line"> <span class="attr">branch:</span> <span class="string">master</span></span><br></pre></td></tr></table></figure></div>
<p>然后使用<code>hexo clean ; hexo d -g</code>,登录你在github上的网站进行测试。</p>
<p><strong>github部署后图片看不见了?</strong></p>
<blockquote>
<p>因为图片源挂了,我们可以修改./source/_data自定义网站图片,见后文</p>
</blockquote>
<p><strong>一些简单的hexo命令</strong>:</p>
<ul>
<li><code>hexo g / hexo generate</code>:在hexo站点根目录下生成public文件夹</li>
<li><code>hexo clean</code>:把<code>public</code>文件夹删除</li>
<li><code>hexo s</code>或<code>hexo server</code>:启动服务,默认地址为<a class="link" href="http://localhost:4000/%EF%BC%8C4000%E7%AB%AF%E5%8F%A3" >http://localhost:4000/,4000端口<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a></li>
<li><code>hexo d</code>或<code>hexo deploy</code> :部署站点,在本地生成<code>.deploy_git</code>文件夹,并将编译后的文件上传至 GitHub。</li>
<li><code>hexo new [layout] <title></code>:Hexo 会尝试在 scaffolds 中寻找[layout].md布局,若找到,则根据该布局新建文章;若未找到或指令中未指定该参数,则使用post.md新建文章。新建文章的名称在_config.yml中配置。</li>
</ul>
<h2 id="Step4:主题配置"><a href="#Step4:主题配置" class="headerlink" title="Step4:主题配置"></a>Step4:主题配置</h2><blockquote>
<p>除非特殊说明,以下配置均在 <code>/_config.shokax.yml</code> 或 <code>/_config.shokaX.yml</code> 文件中修改<br> 来自官方文档:<a class="link" href="https://docs.kaitaku.xyz/guide/theme.html" >主题配置 | Hexo-theme-ShokaX<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a></p>
</blockquote>
<p>先在_config.shokax.yml中加入静态资源:</p>
<div class="code-container" data-rel="Yml"><figure class="iseeu highlight yml"><table><tr><td class="code"><pre><span class="line"><span class="attr">alternate:</span> <span class="string"><name></span> <span class="comment">#!!!一定要设置,不然一直是test,折腾了好久!!!</span></span><br><span class="line"><span class="attr">statics:</span> <span class="string">"/"</span> <span class="comment"># 静态文件根目录,可用于 CDN 加速</span></span><br><span class="line"><span class="attr">assets:</span> <span class="string">"assets"</span> <span class="comment"># 图片资源存放目录</span></span><br><span class="line"><span class="attr">css:</span> <span class="string">"css"</span> <span class="comment"># css 存放目录 (不建议改动)</span></span><br><span class="line"><span class="attr">js:</span> <span class="string">"js"</span> <span class="comment"># js 存放目录 (不建议改动)</span></span><br></pre></td></tr></table></figure></div>
<h3 id="自定义图片:"><a href="#自定义图片:" class="headerlink" title="自定义图片:"></a>自定义图片:</h3><blockquote>
<ol>
<li>在 Hexo 的根目录 <code>/source</code> 文件夹下;</li>
<li>进入 <code>/_data</code> 目录(如果没有则创建);</li>
<li>根据 <code>/_config.shokax.yml</code> 或 <code>/_config.shokaX.yml</code> 中自定义的图片目录(如 <code>assets</code> ),在 <code>_data</code> 目录下创建对应的目录。</li>
</ol>
</blockquote>
<ul>
<li>不同的文件名称分别代表对应的图片,文件名严格对应。<ul>
<li><code>avatar.jpg</code> 默认情况下对应主页上的个人头像,可修改</li>
<li><code>favicon.ico</code> 网站图标</li>
<li><code>apple-touch-icon.png</code> 将网页链接添加到主屏幕时的图标</li>
<li><code>failure.ico</code> 网站被隐藏时的网站图标</li>
<li><code>alipay.png</code> 支付宝捐赠付款码</li>
<li><code>wechatpay.png</code> 微信捐赠收款码</li>
<li><code>paypal.png</code> PayPal 捐赠收款码</li>
<li><code>search.png</code> 搜索下显示的图片</li>
</ul>
</li>
</ul>
<h3 id="自定义网站轮播图"><a href="#自定义网站轮播图" class="headerlink" title="自定义网站轮播图"></a><a class="link" href="https://docs.kaitaku.xyz/guide/theme.html#%E8%87%AA%E5%AE%9A%E4%B9%89%E7%BD%91%E7%AB%99%E8%BD%AE%E6%92%AD%E5%9B%BE" >自定义网站轮播图<i class="fa-solid fa-arrow-up-right ml-[0.2em] font-light align-text-top text-[0.7em] link-icon"></i></a></h3><ul>
<li>在上面的 <code>_data</code> 目录下创建 <code>images.yml</code>;</li>
<li>在文件内存入轮播图图片即可替换原本自带的轮播图;</li>
<li>类似如下,可存入图床当中。</li>
</ul>
<div class="code-container" data-rel="Plaintext"><figure class="iseeu highlight plaintext"><table><tr><td class="code"><pre><span class="line">- https://i.imgtg.com/2023/03/09/YS2LU.jpg</span><br><span class="line">- https://i.imgtg.com/2023/03/09/YSj7p.jpg</span><br><span class="line">- https://i.imgtg.com/2023/03/09/YS6XY.jpg</span><br><span class="line">- https://i.imgtg.com/2023/03/09/YSIlc.jpg</span><br><span class="line">- https://i.imgtg.com/2023/03/09/YQSYM.jpg</span><br><span class="line">- https://i.imgtg.com/2023/03/09/Y0xvg.jpg</span><br><span class="line">- https://i.imgtg.com/2023/03/09/Y0iNK.jpg</span><br><span class="line">- https://i.imgtg.com/2023/03/09/Y0zdB.jpg</span><br><span class="line">- https://i.imgtg.com/2023/03/09/Y0kTl.jpg</span><br><span class="line">- https://i.imgtg.com/2023/03/09/Y0hOs.jpg</span><br></pre></td></tr></table></figure></div>
<p>自0.3.7版本开始,ShokaX 允许主页和文章使用不同的图片源: 以下文件中以<code>_</code>开头的为主题文件夹下,其他均为<code>source/_data</code>目录下:</p>
<ul>
<li><code>images_index.yml</code>为首页图片源文件,如果主题文件夹下存在<code>_images_index.yml</code>,则会使用主题文件夹下的文件,否则使用<code>source/_data/images_index.yml</code></li>
<li><code>images.yml</code>为通用图片源文件,作为首页的后备图片源和文章的图片源。如果未找到<code>images.yml</code>,则会使用主题文件夹下的<code>_images.yml</code></li>
</ul>
<p>后面还有很多选择,就不赘述了。</p>
<p>总之踩坑的还是蛮多的,以为很简单的事情结果耗掉了一中午,目前还是只半成品。之后有时间再来完善下这篇</p>
]]></content>
<tags>
<tag>new start</tag>
</tags>
</entry>
</search>