我有一个 Rails 应用程序,我现在计划将许多实例部署到不同的域。最初我只打算让它在一个域上。
我意识到对于每个域,我必须替换各个地方的所有硬编码值。这些包括:
- 资产主机路径(资产位于同一域中)
- 每当-gem 的 :application 设置(因为两个域可以共享同一个服务器,这是为了避免 crobtab 更新冲突)
- 一些使用 curl 到自己的地址来触发事件的任务
- 在计算没有请求对象的图像完整 url 时,carrierwave 需要硬编码值。
问题
有没有设置这个的策略,所以:
- 该设置不应提交到源代码管理(如
database.yml.example
) - Rails 外部的代码可以访问它(只要-gem 不加载 Rails 环境)
- 访问域的方式可以是一致的