# 基于环境变量进行配置文件切换 配置之所以从代码中提取出来,就是为了更好适应变化。通常我们的应用都有开发环境、生产环境等不同运行环境,这些环境下应用的一些配置肯定会有不同,比如:配置中心的地址等。 如果把所有环境的配置都放在同一个文件里,非常不好管理,我们接到新需求后,在开发环境进行开发时,需要将配置文件中的参数都改成开发环境的,提交代码时还要改回去,这样改来改去非常容易出错。 上述问题的解决办法就是通过环境变量来区分当前运行环境,并通过环境变量来切换不同配置文件。APISIX 中对应的环境变量就是:`APISIX_PROFILE`。 在没有设置`APISIX_PROFILE` 时,默认使用以下三个配置文件: * conf/config.yaml * conf/apisix.yaml * conf/debug.yaml 如果设置了`APISIX_PROFILE`的值为`prod`,则使用以下三个配置文件: * conf/config-prod.yaml * conf/apisix-prod.yaml * conf/debug-prod.yaml 通过这种方式虽然会增加配置文件的数量,但可以独立管理,再配置git等版本管理工具,还能更好实现版本管理。