重构 Apache 配置文件的工具

重构 Apache 配置文件的工具

我面临着清理庞大的 Apache 配置的任务。它已经积累了近十年的垃圾。我首先要重构它,修复制表符/缩进,将部分拆分为包含部分。

您是否有任何有用的脚本 / 技术 / bbedit 配置文件或有关保持有序 Apache 配置的一般建议?是否有任何书籍 / 网站专注于正确组织 Apache 配置?

答案1

我曾经处理过这样的文件,每次公司收购另一家公司时,他们都会将其品牌添加到 1 个 BIG httpd.conf 文件中,不同的品牌必须在不同的测试环境中进行测试。我们的方法是:

  1. 从一个新的空文件开始,只包含需要包含的内容。如果有版本控制系统,请将其保存在版本控制系统中。
  2. 使用 include 指令。这可让您启用禁用整个品牌。
  3. 使用模板系统创建虚拟主机,如下所示,有十几个品牌,运行在 5 或 6 个环境中
  4. 使用企业创建的电子表格来创建虚拟主机文件。这与 perl excel 解析器模块配合得很好。最后,业务分析师只需更改电子表格,即可获得一组新的虚拟主机以供纳入,而管理员也很高兴,因为他们可以通过在 httpd.conf 中注释/启用一行来禁用/启用环境。
  5. grep删除所有注释行和空白行。通过删除所有空格和注释,将 5000 行文件缩减到 2000 行,这似乎没那么困难。

# Begin Virtual Host: [% brand_description %]
Listen [% dyn_ip %]:[% dyn_port %]
<VirtualHost [% dyn_ip %]:[% dyn_port %]>
    ServerAdmin [% server_admin %]
    ServerName [% dyn_ip %]:[% dyn_port %]
    DocumentRoot "[% document_root %]"

    <Directory />
        DirectoryIndex index.html
        Options Indexes FollowSymLinks
        AllowOverride None
    </Directory>

    ErrorLog  [% error_log %]
    CustomLog [% custom_log %] combined

    JKMount [% jk_mount_point  %] [% jk_balancer_name %]

    ErrorDocument 502 /holding/50x_disruption-page.html
    ErrorDocument 503 /holding/50x_disruption-page.html
    RedirectPermanent [% payment_page %]  [% brand_payment_url %]
 </VirtualHost>
# End Virtual Host: [% brand_description %]

相关内容