项目配置管理方案

本文探讨了多种软件(如PHP、MySQL、Nginx等)在不同环境下的配置管理方案,提出了将配置分为开发和生产环境,并针对不同需求进行统一管理的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目配置管理方案

作者:sink <sink.cup@gmail.com>

最后修改:2011-6-30

调研各个软件的配置:
PHP
行数 文件名
1894 php.ini-development
1900 php.ini-production
方案:所有配置放在1个文件里,根据开发环境还是生产环境,拷贝或做链接成php.ini

mysql
48 binary-configure
146 my-huge.cnf
212 config.huge.ini
my-medium.cnf
config.medium.ini
my-small.cnf
config.small.ini
my-large.cnf
方案:配置放在多个文件里,根据环境,选择拷贝my-huge.cnf到my.cnf,只需修 改my.cnf,一般不用修改ini

nginx
nginx/conf/
fastcgi.conf            koi-win             scgi_params
fastcgi.conf.default    mime.types          scgi_params.default
fastcgi_params          mime.types.default  uwsgi_params
fastcgi_params.default  nginx.conf          uwsgi_params.default
koi-utf                 nginx.conf.default  win-utf
方案:配置比较多,单独成为conf目录,拆分成多个文件,一般只要修改 nginx.conf,别的是不常修改的。

apache2 httpd 
apache2/conf
extra  httpd.conf  magic  mime.types  original
apache2/conf/extra
httpd-autoindex.conf  httpd-languages.conf           httpd-ssl.conf
httpd-dav.conf        httpd-manual.conf              httpd-userdir.conf
httpd-default.conf    httpd-mpm.conf                 httpd-vhosts.conf
httpd-info.conf       httpd-multilang-errordoc.conf
方案:配置比较多,成为conf目录,httpd.conf是主配置,里面可以开启include extra里面的某个配置。extra里的的也要修改,如果不包含extra,则把配置写在httpd.conf里。 

整理总结:
分环境:dev(开发)、prod(生产),如果需要再添加,比如test(测试环境)。
主要配置放在system.conf-dev和system.conf-prod中,
如果发现一些配置在各个环境中一样,不需要修改,则单独建立一个文件,比如语言文字映射表written_language.conf。这样即可避免冗余。否则system.conf-dev和system.conf-prod里有大量内容一样,修改时要修改2个文件。
不要为db单独建立db.conf-dev和db.conf-prod,而把db放在system.conf-dev中,
因为最好只有system.conf-dev和system.conf-prod分环境,这样开发时system.conf链接到system.conf-dev,上线时链接到system.conf-prod即可。

配置文件名为system.conf,而不是system.php,因为conf很有可能采取json、ini格式,现在为了性能里面采用php数组格式,随时可以切换成json格式,以便于通用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值