我想将大约 100 多个站点从一台服务器迁移到另一台服务器。当前计划是逐渐为每个添加一个 acl,因为它们被移动以将流量引导到新服务器。
这是一个简化的例子
front http_frontend
bind *:80
acl is_new hdr_end(host) -i sub1.domain.com
acl is_new hdr_end(host) -i sub2.domain.com
acl is_new hdr_end(host) -i www.domain2.com
mode http
# etc
use_backend web1 if is_new
default_backend legacy1
Run Code Online (Sandbox Code Playgroud)
一旦他们都被感动了,我们就会改变 default_backend
有没有办法从另一个文件中读取这些 acl?或者从文件中读取域 - 也许像这样?
acl is_new hdr_end(host) -i /path/to/file
Run Code Online (Sandbox Code Playgroud)
例如,我将所有安全证书包括在下面,这样的东西会很棒!
bind *:443 ssl crt /etc/haproxy/certs.d
Run Code Online (Sandbox Code Playgroud)
如果没有,这不是世界末日,它只是美好而整洁:)。
haproxy 中的 ACL 可以使用-f
参数从文件加载值。您可以在此处阅读文档。
例如:
acl valid-ua hdr(user-agent) -f exact-ua.lst -i -f generic-ua.lst test
“-f”标志后跟一个文件名,所有行都将作为单独的值从该文件名中读取。如果要从多个文件加载模式,甚至可以传递多个“-f”参数。空行以及以尖号 ('#') 开头的行将被忽略。
归档时间: |
|
查看次数: |
11359 次 |
最近记录: |