一次 Playwright + Docker 的踩坑记录
本文作者分享了在服务器上部署使用Playwright进行网页截图功能时遇到的三个主要问题及解决方案。首先,由于网络环境差,无法在线下载Chromium浏览器,作者采用离线拷贝浏览器文件并设置环境变量`PLAYWRIGHT_BROWSERS_PATH`指向该目录的方法绕过下载。其次,即使浏览器文件存在,仍因缺少系统动态库而无法启动,需在Docker中安装Chromium的运行时依赖库。最后,为解决中文字体显示为方框或误用日文字形的问题,作者安装了Noto CJK字体并配置字体优先级,确保简体中文优先显示。文末提供了完整的Dockerfile示例,通过离线浏览器、安装依赖和调整字体,最终实现了稳定运行。
[科技杂谈]科技心得杂谈
未读
博客友链延迟检测和互链检测
给博客加了个友链自检工具:前端插入一段纯 JS,自动把友链列表里打了 <friend-link>友链页面</friend-link> 标识的站点拿去 ping,测连通延迟并判断是否回链。前者用多次取平均+剔除异常值,后者把友链地址甩给同域名下的 Python 代理服务,由它抓取对方页面看自己域名是否出现。脚本默认 4 并发、缓存 5 分钟白名单站点直接标“双向”。JS 直接放友链页即可;Python 用 Flask 开 /check_friend?url=xxx 接口,配好本域名和端口,部署在任何能翻墙的机器就行。
MC皮肤站搭建心得
文章记录了作者将皮肤站从 Windows 宝塔面板迁移到 Proxmox VE 8.2.2 中 LXC 容器的全过程。因 Windows+Nginx 每次重启就掉链,作者决定转用更稳定的 Linux。先在 LXC 尝试 Ubuntu 23.04,发现官方源已下线;再选 24.10 又被 PvE 判定“不支持”,于是手动改 PVE 的 Ubuntu.pm 把 24.04 加进允许列表,并更新镜像完成容器创建。进入系统后发现官方仓库仅提供 PHP 8.3,而皮肤站需要 8.1,于是添加 Ondřej Surý 的 PPA;由于容器为非 LTS,作者又改 PPA 配置文件把发行版代号指向 jammy,最终 apt 安装 php8.1 及所需扩展,顺利完成迁移。
[科技杂谈]科技心得杂谈
未读
关于后端提供CSS、JS资源时候的一些注意事项
文章指出:后端返回资源文件时必须设置正确的Content-Type,否则前端虽然能拿到文件,但浏览器不会按 CSS/JS 解析渲染,最终导致样式与交互失效。文末给出一段 Flask 示例,在返回 /post_card/v1/assets/路径下的文件时,根据后缀名判断:.css 设为 text/css,.js 设为 text/javascript,其余直接返回二进制流,以确保响应头正确。