作为博客的第一篇文章,我觉得记录一下搭建的过程是必要的。看到这个题目:"build a web",不禁回想起 6 年前初中时候自己摸索的历程:

那个时候只知道 HTML 的大杂烩,遇到需要 CSS 和 JS 的都不会引用,当然最后还是用 WP 瞎做了个静态挂在了 Github 上。
日月如磨蚁,万事且浮休。在不得意的大学里循循寻找自己曾经的初心也是一件难事,谨以此文传达哀叹之心。
回到正题,网页分为静态和动态,前者指只在浏览器的页面上进行交互,后者则需要引用数据库对访问者的行为进行反应和储存。如政府、公司官网,纯粹介绍;而如淘宝,知乎,它可以记录你的购买,写作,注册等功能。最简单的区分办法就是,刷新一遍是否会重新生成你之前的内容。根据需求,选择类型。
有了网站还不够,你需要地方来放这个网站。静态托管主要有Cloudflare,Github。即你上传到那,它给你个链接,你就可以通过链接访问你的静态网页。如果不想要它给的链接,可以换成自己购买的域名,有Namesilo,GoDaddy,阿里云,腾讯云等,多家比价。
购买域名后,因为电脑只认识 IP 的地址,所有要对域名进行 dns 解析(xxx.com☞xx.xx.xx.xx)一般在购买域名的地方就会提供,个人推荐 Cloudflare,功能强大。
本博客是本地局域网运行,因此没有公网 IP,dns 解析不到局域网,需要使用内网穿透(内网☞公网)或路由器端口转发。通过 Cloudflare 的 tunnel 功能实现所有人都能访问。Sakura FRP 也能实现内网穿透。
你可以通过套用现成的模板进行搭建,也可以手搓代码。我采用的是 docker 容器中的 halo 博客系统,寻找自己喜欢的主题与插件。具体的部署过程就不赘述了,可以参考官网的用户手册。这里附上需要注意的一点:halo2x 后 application 的格式变了,因此需要更改以免退回 h2 数据库。
spring:
r2dbc:
url: r2dbc:mysql://mysql:3306/halo?useSSL=false&serverTimezone=Asia/Shanghai
username: halousername
password: yourhalopassword
halo:
environment: prod
path:
data: /root/.halo2
如果你嫌麻烦,现在也有许多 0 代码的服务:上线了等。只需输入文本就行,很方便。
总的来说,相较于 10 年前,现在建站过程已经是大大简化了,你不需要懂得代码就能搭建自己的网页,况且现在 AI 也能代替实现你的想法,许多尖端前沿的东西已经大众化,由此带来的问题也不是一两句能说完的...
附上自己初用 cursor 时写的随笔
深夜,一位全栈入门者对着眼前的电脑屏幕犯了怵。
自己是怎么把页面 UI 写的乱七八糟的。
跟着菜鸟教程学 html,css,自我感觉良好,可以小实践一下。
突然看到网上大神的作品,哇,好好看,感觉把源码扒来抄抄。
嗯?明明把 html 代码加进去了,怎么一移过来页面就乱了。
假的,水货,没有适用性。
又看到一个心动的作品,一扒,连 html 文件都没有,这特么啥啊。
假的,魔法,连基本格式都不对。
看着长长的学习清单,从 css 到 js,从 mysql 到 php,眼前充满了搞副业的憧憬。
滴滴,消息来了:你听说了吗,cursor 支持代码编写了。
一愣,又一则新闻映入眼帘:codex 发布了。
我颤颤巍巍的下载应用程序,部署,输入指令:用 js 写个烟花。
瞬间生成的代码让我定在原地,我难以置信的仔细查看一行行代码,试图找出一点漏洞,哪怕只是一个字符的错误。
可惜我没有。
我又立刻输入指令:生成 vue 动态博客搭建模板。
一行又一行的,行云流水般的,丝毫不停顿的,完全看不懂的洪流从我眼前一幕幕过去,我呆呆地望着屏幕,心里一片空白。
AI 宣告了自学者的死亡。
从小白到专家,每个人都需要从基础语法逐步深入至复杂语句的构建,AI 的介入则加深了这两者之间的鸿沟,替代了简单重复的劳动,你只需提供想法,AI 便能帮你实现。
可要是 AI 错了呢?
如果未来人们过于依赖 AI,以至于锤子锄头不会用,那又是谁的问题。
AI 到底取代的是马车还是马车夫?马车夫懂造轮子么?
为什么人类无法取代,因为人工智能只是对上加对,而人类才能屎上雕花,以不完美创造完美。