在Zend框架中使用不同的DB访问开发,测试站点

时间:2010-08-12 19:05:28

标签: zend-framework

嗨Zend框架人员,

我有一个问题:

我们可以设置生产,开发,测试等。

我假设我们有3个不同的数据库。

但我怀疑我们如何访问测试人员和开发人员的网址?

我们是否需要传递GET值并设置其开发或测试?或者还有其他方法吗?

http://localhost/是网址,我是使用它的开发人员,我们如何为测试人员提供网址?我不是服务器管理员,所以如果你们有其他技术使用相同的代码库?

或者我是否希望有3个代码库本身用于测试,开发,生产等。对于生产它OK :),但只是一个例子。

当我向他们介绍#ZF时,我的一些朋友提出了这个问题,但我不确定在将其作为GET值传递并设置时是否正确。

即像site /?version = dev或类似的东西:)。如果你有答案我很乐意听。

编辑:

我正在寻找像@David Weinraub这样的方式“你是说你想要使用单个虚拟主机,一个位置,但是能够强制执行上下文进入开发,测试,生产模式吗?那是一种异常“。

@Iznogood的回答也是对的。但我正在寻找一种方式@David Weinraub说。所以将它标记为正确的它是一种不寻常的。

谢谢你们的帮助。

2 个答案:

答案 0 :(得分:1)

您是说要使用单个位置的单个虚拟主机,但是能否强制执行上下文进入开发,测试,生产模式?这有点不寻常。

如果没有,也就是说,如果你将开发,测试,生产部署到不同的服务器上(这使我觉得更常见的安排),我同意@izogood:发布你的SetEnv指令。 htaccess或vhost级别的上游。

由于我的许多项目没有正式的“构建过程” - 只需要直接的FTP上传,通常是共享主机;基本的,我知道 - 我更喜欢让我的.htaccess不受部署特定内容的影响。因此,我倾向于在我的本地开发机器上的vhost级别发出SetEnv指令,然后让APP_ENVIRONMENT常量 - 在public/index.php中定义 - 默认为{{1} }。

答案 1 :(得分:0)

如果您使用的是,请使用.htaccess

SetEnv APPLICATION_ENV production

您可以在不同环境之间切换。 所以在你的停滞服务器上

SetEnv APPLICATION_ENV staging
你的开发服务器上的

SetEnv APPLICATION_ENV development

...等 假设您在application.ini中设置了数据库。