如何避免在重新启动 CouchDB 时重新启动 Apache 代理

如何避免在重新启动 CouchDB 时重新启动 Apache 代理

我正在使用运行本地主机 CouchDB 实例考奇数据库在我的 Mac 上,使用ProxyPass指令在 Apache 2 后面进行代理:

<VirtualHost *:80>
    ServerName playlick # points to localhost in /etc/hosts
    DocumentRoot "/Users/james/Sites/playlick"
    ProxyPass /data http://localhost:5984
    ProxyPassReverse /data http://localhost:5984
</VirtualHost>

如果我尝试在 Couch 实例http://playlick/data处于没有运行我得到一个503服务暂时不可用错误,正如预期的那样。

然后我启动 Couch 服务器并访问相同的 URL,但是我仍然直到我重新启动 Apache 代理才会出现错误。

另一方面,如果我启动 Couch 实例点击该 URL,一切都正常工作,无需触碰 Apache。

因此,似乎 503 错误被缓存,直到 Apache 进程重新启动。我该如何阻止这种情况发生?

或者,如果不可能,那么当我在 CouchDBX GUI 应用程序中启动 Couch 实例时,如何强制 Apache 重新启动?

答案1

我相信你需要关注的是重试选项,你可以通过代理通行证指示。

重试默认值:60 秒

连接池工作器重试超时(以秒为单位)。如果后端服务器的连接池工作器处于错误状态,Apache 将不会将任何请求转发到该服务器,直到超时到期。这可以关闭后端服务器进行维护,然后稍后将其重新联机。值为 0 表示始终重试处于错误状态的工作器,没有超时。

相关内容