Hi all,

I'd like to propose a small addition to mod_env: a new SetEnvFromFile directive 
that reads internal environment variables from a file of name=value lines at 
configuration time, storing them in the same per-directory table used by SetEnv.

PR (against trunk): apache/httpd#750<https://github.com/apache/httpd/pull/750>

Motivation: it lets operators keep a set of environment values in a separate, 
easily-generated/managed file (e.g. from deployment tooling)
instead of inlining many SetEnv lines in the server config. Values flow to 
r->subprocess_env exactly like SetEnv, so they reach CGI, SSI, logging, proxy 
backends, etc. unchanged. Because both write the same table, precedence follows 
configuration order (last writer wins), matching existing SetEnv behaviour.

The file format is one name=value per line; blank lines and # comments are 
ignored, whitespace is stripped, and relative paths resolve against ServerRoot. 
It's read once at config parse time.

The PR includes the implementation, mod_env.xml documentation, a 
changes-entries entry, and a test case in the pytest suite (extends the 
existing mod_env SSI test).

I'd appreciate any feedback — in particular whether this is considered worth 
adding versus existing approaches (Include + SetEnv), and any concerns about 
the config-time-only read.

Thanks,
Cornel

Reply via email to