我把 20 年前的老古董代码拿出来,用 .
写代码这件事,二十年时间真的能拉开天壤之别。
如果你也需要一个极其轻量、选个文件夹就能秒变 HTTP 服务器的工具,可以去试试这个 Alpha 版本。
下一篇
给 LLM 评审器加了句 "adversarial" →
二十年前,我为了搞明白 HTTP 协议到底是怎么回事,捧着厚厚的协议规范书,一行行手写 Socket,熬了无数个通宵才搓出了一个叫 "Easy Web Server" 的小工具。那时候没有现成的库可以调,每一个字节的解析都要亲力亲为。现在回头看,那种对着底层协议死磕的感觉既硬核又有些笨拙。
最近我突然想折腾一下,决定把这个二十年前的“老古董”彻底推倒重来,做成 EasyHTTPServer 2。这次我没打算去修补那些陈旧的 Legacy Code,而是直接站在了巨人的肩膀上。我用了最新的 C# / .NET 10,底层直接跑在 ASP.NET Core Kestrel 之上,UI 部分则用了 WPF 来复刻那种怀旧感。
最让我感慨的是,以前写这种工具要处理大量的 Socket 样板代码,现在有了 AI 辅助和极其成熟的标准库,开发效率简直是降维打击。
这次重写的版本有几个实操中觉得挺爽的点:
- 零配置局域网 HTTPS: 以前搞本地 HTTPS 证书配置能把人折腾疯,现在内置了快速配对机制,在局域网里直接就能跑加密传输。
- 断点续传支持: 专门处理了 HTTP Range 请求,大文件传输的时候如果断了,不用从头再来。
- 安全性重构: 以前那种容易被利用的路径遍历漏洞(Path Traversal)和不安全的 CGI 执行,在这次重写中被彻底封死了。
- 复古 UI: 我特意保留了 2005 年那种极简的皮肤,看着有种回到了学生时代 HTML 入门课的感觉。
如果你也需要一个极其轻量、选个文件夹就能秒变 HTTP 服务器的工具,可以去试试这个 Alpha 版本。
项目地址:
https://github.com/moe-charm/EasyHTTPServer目前的版本还在 Alpha 阶段,主要用于简单的静态网站托管或者局域网文件共享。虽然现在的开发环境变了,但那种“工具即所得”的纯粹感,我觉得还是挺值得保留的。
免费 AI 工具箱 · 全部完全免费
