我想创建一个脚本来直接操作Apache2配置,读取和写入其属性(比如添加一个新的VirtualHost,更改已存在的设置)。
是否有任何libs,Perl,Python或Java可以自动执行该任务?
答案 0 :(得分:7)
您可以使用mod_perl将Perl直接嵌入到配置文件中,而不是操纵配置文件。例如,这可以允许您从数据库中读取所需的vhost。
有关快速示例,请参阅Configure Apache with Perl Example;有关所有详细信息,请参阅Apache Configuration in Perl。
答案 1 :(得分:7)
答案 2 :(得分:4)
查看Augeas,它不是专门针对Apache-httpd配置的。文件它只是一个通用的配置。文件“编辑器”API。其中一个主要卖点是它会保留评论等。很高兴其他工具可以改变文件,拒绝让你保存损坏的文件。
此外,您可以在所询问的所有语言中使用相同的API,并且可以编辑其他配置。使用相同API的文件都是IMO的主要优势。
答案 3 :(得分:2)
这是最终的Apache配置程序:
将许多Apache内部暴露给用Perl编写的程序。
例如:http://perl.apache.org/docs/2.0/api/Apache2/Directive.html
(当然,除了配置它之外,它还可以做很多事情。)
另一方面,它需要加载并在Apache中运行,它不是配置文件解析器/编辑器。
答案 4 :(得分:2)
答案 5 :(得分:0)
另请参阅Config::General,声称与Apache配置文件完全兼容。我用它来解析我的Apache配置文件,以便在配置更改后进行自动回归测试。