本帖最后由 友人X 于 2021-8-3 00:25 编辑
客户需求原本客户针对应用的负载是承载在nginx上的,现已采购AD,想要把nginx上的配置转换到AD上
解决思路 查看客户nginx配置,发现原有场景为多个不同域名解析到一个IP,然后根据host字段来识别对应域名,再转发到对应系统,并且经过AD转发过后,要求服务器能够识别到接入终端的正式IP,同时,部分业务系统还要求有访问对应域名之后,需要重定向另外一个域名进行访问。 根据对以上nginx配置的分析,回到AD上,我们可以通过前置策略针对http请求头部的host字段来进行调度,识别到对应host之后,调度到对应的节点池,针对需要识别真实客户端地址的问题,可以调用优化策略当中的http优化,要去透传真实IP到服务端,针对重定向场景,同样也可以用到前置调度策略,只不过这次识别到对应host字段之后,它的动作是跳转到自定义的内容。 配置步骤 1、nginx的vhost配置解析(详细配置可参考百度) 场景一: server { listen 80; //监听端口为80 location /{ proxy_set_header Host $host; //把host字段放在http的请求头中进行转发 proxy_set_header X-Real-IP $remote_addr; //获取真实客户端的ip地址 } } 场景二: server{ listen 80; access_log off; location /{ proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } 2、AD上针对上面两个场景的配置 (2)、开启调度策略,根据host字段来调度,并转发到上面的节点池 (3)、配置优化策略中的http优化,开启透传IP (4)、创建虚拟服务,把调度策略、优化策略关联起来 (6)、再配置调度策略,动作为返回自定义内容,内容为步骤5中自定义的内容 (7)、重复场景一的步骤,创建虚拟服务,关联对应的调度策略,优化策略 |