三 文章首页 实时留言 网络邻居 开往 虫洞
返回
对 (MPA) 多页面切换实现丝滑动画的探索

有接触过一点 Web 的朋友应该知道,SPA (单页应用) 总能实现非常丝滑的切换动画,而传统 MPA (多页应用) 由于每次切换页面都会重载一次 HTML、CSS、JS 资源,即使写了一些延时跳转机制 (如执行动画后多少毫秒跳转目标页面)、使用首屏动画,但也总感觉不是很丝滑,通常有动画断层,浏览体验不是很好。 但是直到有天我发现了一种新的浏览器原生 API :`View Transition`,了解到它最早是给 SPA 做的,但后续扩展了对 MPA 的支持,这么一来丝滑的页面切换动画不再是 ...
2026/1/21 08:10:36 Web开发
让服务在非 Root 权限下使用 80 或 443 端口

有段时间自己写 web server 的时候考虑到想直接绑定 80 和 443 端口,但默认情况下 Linux 只有 root 用户或经过提权才能绑定 1024 以下的端口(如 80、443)。此时如果既不想用特权用户权限跑某个服务(避免安全问题),也想使用这些端口,那就需要一些配置。 ### 方法 1:iptables 端口转发 --- 例子:将 80 端口流量转发到 8080 ``` sudo iptables -t nat -A PREROUTING -p tcp --dport 80...
2026/1/7 21:59:38 Linux 系统运维
AppImage 应用打包快速上手

Linux 有非常多的发行版,有太多不同的包管理方式,要接触非常多的打包方式,如 Debian (deb)、ReadHat 系列 (rpm)、Arch (pkg.tar.zst) 等..... 当然,还有一些容器方案像:Flatpak、Snap、玲珑 而 AppImage 呢,则非容器,而是将许多依赖包含在一个文件中,更像是一个经过压缩且便携式的可执行文件,可以随便挪动并使用,它会在第一次启动时候临时解压和挂载资源,所以启动时间稍微慢,但它有缓存机制,后续启动会加快。 既然它是非容器,那么...
2025/12/19 19:28:59 Linux
Flatpak 使用和应用打包快速上手

Flatpak,它是一种 Linux 跨发行版的通用软件包管理,使用沙箱隔离环境来运行程序,为了解决发行版应用分发碎片化、依赖冲突、权限管理混乱问题。开发者可以把应用统一封装成 flatpak 格式进行分发,这样就不用关心那些杂七杂八的问题,主要用于桌面应用(当然如果想打包 cli 也是可以的) ### Flatpak 的安装 --- 这里以 Debian 系为例。 ``` # Debian / Ubuntu sudo apt install flatpak ``` 添加 flathub ...
2025/11/26 20:51:46 Linux 容器
如何用 webSocket 实现一个实时聊天应用

有很多人好奇我站里的那个实时留言是怎么做的,在聊这个之前,我们得说说什么是 webSocket 协议,和 HTTP 的差异在哪里。 我们熟悉的 HTTP 一般是这样:客户端主动请求服务器、然后服务器接收到请求后被动响应给客户端。且属于短连接,几乎是请求响应后立即断开连接,每一次都是 `[客户端 => 服务端] 然后 [客户端 <= 服务端]` <img style="scale: 0.8;" src="/assets/webSocket_chat/http.svg"> 而 webSock...
2025/11/22 22:27:57 Web开发 Bun