The inability to add headers (such as the ones in the article) natively in httpd, and requiring the use of relayd to do so, is the thing keeping me from using OpenBSD’s httpd server for a few cases where otherwise I think it would be a great fit. Totally fine that the devs don’t want to add that functionality, and I don’t fault them for not doing it (it certainly would add more code to maintain), but I personally feel that the ability to add headers is part of “table stakes” for an http server.
As such, I am still using nginx for cases where httpd would otherwise work fine.
: Somewhat counter intuitively, hsts is natively supported, but as a special stanza instead of with a more generalized “add custom header” mechanism
This used to keep me away from it too, then after some time (really needed this feature, really didn’t want to switch away from httpd) I just bit the bullet and did it. I’ve been really happy with it ever since. My configuration’s become increasingly complex (many virtual hosts, many different backends), but having the separation between httpd and relayd has made it easier to deal with, I think.