On 05/18/2017 10:46 AM, Jim Jagielski wrote:
Based on feedback from various sessions:
Thanks for the list, Jim!
o Warn if the trailing '/'s don't match in ProxyPass/Reverse
directives (eg: ProxyPass /foo http://www.example.com/foo/ )
This one is easy enough to put into the directives themselves, but I'd
like to expand on the idea in general.
What would you all think about a linter for httpd config files?
Something that can be updated independently of httpd releases with a
ruleset, and that can target multiple versions of the server at once so
that everyone gets the benefits without having to upgrade. Ideally the
output would be standardized to the point that IDEs could dynamically
run the linter as you typed.
I started playing with this idea last year but got pulled into security
and testing, so I haven't taken a look at my (Python-and-Atom-based)
project in a while. This trailing-slash warning was in my notes, as were
things like
- Unused/unnecessary <IfDefine>/<IfModule>
- VirtualHosts declared with hostnames instead of IP
- Location blocks in the wrong order
- Duplicate Listen directives
etc.
Short term, this helps automate spreading the wisdom that we have to
impart over and over again on the support channels. In the long term,
linter rulesets document what's difficult about the configuration
language so we can potentially design a better one in the future.
--Jacob