Include configuration file of H2O
このブログのWebサーバはH2Oを使っています。
今年1月にH2Oのv2.1.0がリリースされました。新機能の1つとして、設定のincludeに対応しました。
- Release H2O version 2.1.0 · h2o/h2o · GitHub
- add include config feature by i110 · Pull Request #1022 · h2o/h2o · GitHub
ドキュメントは以下。
yamlのタグとやらを使っているみたいですね。yamlのタグ機能がどんなものなのか確認しようと思ったのですが正直良くわからず...。おいおい調べよう...。
includeの方法
h2o.conf
内にblog.lorentzca.me.conf
をincludeする例です。
- includeしたい設定ファイルを用意する
<<: !file 設定ファイルのpath
のようにしてincludeする
blog.lorentzca.me.conf
"blog.lorentzca.me:80":
listen:
port: 80
paths:
"/":
redirect:
status: 301
url: "https://blog.lorentzca.me/"
"blog.lorentzca.me:443":
listen:
port: 443
ssl:
certificate-file: "/etc/letsencrypt/live/blog.lorentzca.me/fullchain.pem"
key-file: "/etc/letsencrypt/live/blog.lorentzca.me/privkey.pem"
paths:
"/":
proxy.reverse.url: "http://127.0.0.1:2368/"
"/.well-known":
file.dir: /var/www/ghost/.well-known
h2o.conf
user: h2o
...
hosts:
<<: !file /etc/h2o/blog.lorentzca.me.conf
感想
include機能によって、最近行数が長くなってきたH2Oの設定ファイルが分割できて見やすくなりました!✨
やっぱり設定ファイル類は管理しやすいように分けていきたいですね(分け過ぎは禁物ですが...)。
参考リンク
h2oのGitHub。
- Release H2O version 2.1.0 · h2o/h2o · GitHub
- add include config feature by i110 · Pull Request #1022 · h2o/h2o · GitHub
h2oのドキュメント。
yamlのドキュメント。