可以在nginx的上游块中使用“include”指令吗?
我的网站使用两个app服务器,即app1和app2,所以在配置中我有这样的东西:
由于每次更新代码时我都需要重启两个服务器进程,并且我希望服务不受干扰,我将手动执行以下步骤: >在上游块中注释app1,以便将其修改为:
>运行nginx -s reload 我希望写一个脚本来完成这项繁琐的工作,所以我希望这样做: >有一个名为“available”的文件夹,其中包含app1.conf和app2.conf格式为
>让另一个名为“enabled”的文件夹包含app1.conf和app2.conf的软链接
因此,每次我需要禁用任何应用服务器时,我只需从“启用”文件夹中删除相应的软链接,稍后可以通过运行ln -s来恢复它 但是这种方法效果不好,因为我收到了来自nginx的错误消息:
是这样包含不能放入上游块吗?而且我想我在这种情况下并不孤单,有时禁用和启用服务器,其他人通常如何处理它?
最佳答案
不幸的是,nginx无法在上游内部处理include指令. 在nginx.conf的http部分的某个地方:
创建空文件:
使用此脚本来管理上游服务器(upstreamctl.sh):
在您的情况下,您可以运行:
和 (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 在Nginx中随机返回备用页面进行A / B测试
- apache-2.2 – Nginx作为反向代理:如何正确配置网关超时?
- 如何在Nginx中为所有服务器设置默认指令? (Plesk的问题)
- ruby-on-rails-Nginx,Unicorn和Rails = 502错误网关
- regex-如何匹配nginx中扩展名较少的文件的位置?
- Nginx:转发所有子域名
- NGINX代理缓存 – 在查询字符串中缓存buster变量 – 可能忽
- 使用nginx/php-fpm设置$_ENV(fka $HTTP_ENV_VARS)
- 在nginx重写中发送额外的标头
- linux – 我可以在相同的服务器上运行Apache和Nginx,在同一