Lobsters | 原文链接 | 2026-09-01 收录

用 m4 宏让 OpenBSD httpd.conf 告别重复:Repeating Ourselves Less

来源: nemin.hu — 2026-08-17

概述

一篇实操指南,介绍如何用 POSIX 自带的 m4 宏处理器来缩短 OpenBSD httpd.conf 配置。作者把重复的恶意路径拦截块、ACME、TLS、HTTP 头等整理成宏,最终整个多站点配置缩成几行 SITE(域名) 调用。文章先简明讲解宏的概念(AST 宏与文本展开宏的区别)与 m4 的 divert/define/dnl 等用法,再一步步重构配置,并记录了一个坑:m4 会递归展开并把字符串中的逗号误当参数分隔符,需要用 sed 把占位符替换回逗号来规避。

核心要点

金句

只要改动宏定义一处,就能重新生成所有站点的配置。
返回 Lobsters 首页