m4로 OpenBSD httpd 설정의 반복 줄이기
역량 개발 · GeekNews · 2026.09.01
OpenBSD의 httpd는 반복되는 서버 설정을 간소화할 수 있는 내장 매크로 기능이 부족하다는 특징이 있습니다. 이를 해결하기 위해 50년 가까이 사용되어 온 POSIX 텍스트 전처리기인 m4를 활용하여 설정을 자동화하는 효율적인 방법을 제안합니다. m4의 define, 위치 인자, 재귀 평가 기능을 활용하면 TLS 설정, 보안 헤더, 리디렉션 규칙 등을 재사용 가능한 매크로로 묶어 관리할 수 있어, 여러 사이트의 구성을 매우 간결하게 축약할 수 있습니다. 다만, m4가 쉼표(,)를 인자 구분자로 인식하여 설정 파일의 쉼표가 사라지는 문제가 발생할 수 있는데, 이를 해결하기 위해 sed를 파이프라인으로 연결하여 쉼표를 복원하는 트릭을 사용할 수 있습니다. 이러한 방식은 외부 도구 설치 없이 OpenBSD의 기본 도구만으로 운영 환경을 구축하려는 Unix 철학에 부합하는 매우 흥미로운 접근 방식입니다.