【发布时间】:2011-11-01 19:03:42
【问题描述】:
在我和网络架构师之间,我们管理着一堆 Web 服务器 (FreeBSD)。他负责所有与服务器/网络相关的东西(IP、防火墙、用户/组等),而我负责所有与网络相关的东西(Apache、PHP、MySQL)。有时职责重叠。
发生了几次对配置文件进行了一些更改,这些更改或多或少地影响了服务器,我们无法弄清楚我们中的哪些人进行了更改以及为什么进行了更改。
我 - 作为一名 Web 开发人员 - 认为将文件置于版本控制之下是一个很好的做法(我们目前使用 Subversion),因此每当我们更改任何内容时,我们都必须提交评论更改。它将解决所有问题,想知道谁做了什么以及为什么。
我想到的特定配置文件是:
- 防火墙配置
- apache 配置(带有附加功能)
- php 配置 (php.ini)
- MySQL 配置 (my.conf)
我已经知道,服务器配置文件的idea版本控制基于other question asked here是合理的。我唯一担心的是如何在 Web 服务器端正确执行,因为文件位于不同的位置。将整个 /usr/local/etc 置于版本控制之下似乎毫无意义,因为它不仅包含配置文件。
我想知道是否不创建一个新文件夹,比如/config,它将受版本控制,并包含我们需要的所有配置文件,然后将原始文件替换为指向/config 文件夹中的符号链接的文件。例如:
/usr/local/etc/apache22/httpd.conf -> /config/apache22/httpd.conf
所以问题是:这是个好主意吗?如果不是,什么是更好的解决方案?
【问题讨论】:
标签: php apache version-control freebsd