使用自定义命令行参数启动mongrel

问题描述:

我希望能够通过传递额外的命令行参数来启动mongrel或webrick服务器,该参数可以在我的rails应用程序内部读取。一个例子是:使用自定义命令行参数启动mongrel

ruby script/server -p3000 --target=FOO 

这里,--target是一个自定义开关谁的价值,我想在我的Rails应用程序进行拦截。

然而,这产生了错误:

server: invalid option: --target=FOO 

我发现其中提到一个-C杂种文档(--config = PATH)参数指定一个完整路径YML的配置文件,但是指定给开关与上面相同的错误。我认为这个选项已被弃用。

是否有另一种方法来实现这一目标?

如果不重写参数处理代码,则不能将mongrel/webrick传递给额外的命令行参数。如果mongrel/webrick不承认这个选项,它会发出抱怨并给出错误。

而不是重写参数处理,为什么不把自定义值放在环境变量中,让你的应用程序查询变量?你可以添加你自己的脚本来处理启动的mongrel/webrick和设置环境,这样一个命令就能启动所有的东西。

+0

我们在Windows Server下运行,生产中使用的是mongrel_service。如果有一个地方我可以添加一个命令行处理器,它可以吸收我感兴趣的选项,并且可以在杂种,webrick,mongrel_service以及phusion乘客中工作,我希望这样做。 – whaka 2010-03-25 03:29:41

+0

真令人沮丧的是,如果我使用-C开关指定一个配置YAML文件,它也会被拒绝,如果它包含任何mongrel_rails不理解的东西。 – whaka 2010-04-08 22:57:25