xx客户网站跳转问题排查

客户反馈 http://****.*******.com:8001/*****/ 这个点了登录后跳转到了80端口返回403,而不是8001端口
查看该域名配置了特殊端口8001/8002/8003,而自定义配置里面有配置,如果用户通过80端口访问则返回403,我方没有配置跳转
已通知客户查看源站跳转机制.
–源站返回302没有带端口,暂时将回源端口改写成8001,已请客户确认(v2)(这样用户访问8002,8003等URL时cdn也是回源站的8001端口)
–源站返回302后的地址没有带端口,所以默认会是http 80回源,源站80端口没开放而导致回源超时(v1),反馈给客户后客户源站已开通80端口,已配置特殊端口各自回源:
set $http_cc_port_1 $server_port;  如果客户后期要求全部服务端口都只用80回源就去掉该行

set $update_headers_1 “Host:****.*******.com:$server_port”; (v3)
–和研发同事反馈后已全网下发此配置,并回复客户

 

v1 访问80端口给出403
v2 所有URL,无论带什么端口都8001回源
v3 访问8001服务使用8001回源,访问8002服务使用8002回源,访问8003服务使用8003回源,访问80服务使用80回源;302跳转会携带端口

异常时的日志:

# curl -vo /dev/null http://****.*******.com:8001/***** –resolve “****.*******.com:8001:**.**.***.**”
* Expire in 0 ms for 6 (transfer 0xe08e30)
* Added ****.*******.com:8001:**.**.***.** to DNS cache
* Hostname ****.*******.com was found in DNS cache
* Trying **.**.***.**…
* TCP_NODELAY set
* Expire in 200 ms for 4 (transfer 0xe08e30)
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 –:–:– –:–:– –:–:– 0* Connected to ****.*******.com (**.**.***.**) port 8001 (#0)
> GET /***** HTTP/1.1
> Host: ****.*******.com:8001
> User-Agent: curl/7.64.0
> Accept: */*
>
< HTTP/1.1 302 Moved Temporarily
< Transfer-Encoding: chunked
< Connection: keep-alive
< Date: Wed, 19 Aug 2020 13:42:29 GMT
……
< CACHE: TCP_MISS
< Location: http://****.*******.com/*****/
< Accept-Ranges: bytes
< Server: Apache-Coyote/1.1
……
<
{ [5 bytes data]
0 0 0 0 0 0 0 0 –:–:– –:–:– –:–:– 0
* Connection #0 to host ****.*******.com left intact

正常后的日志:

# curl -vo /dev/null http://****.*******.com:8001/***** –resolve “****.*******.com:8001:**.**.***.**”
* Expire in 0 ms for 6 (transfer 0x1722e30)
* Added ****.*******.com:8001:**.**.***.** to DNS cache
* Hostname ****.*******.com was found in DNS cache
* Trying **.**.***.**…
* TCP_NODELAY set
* Expire in 200 ms for 4 (transfer 0x1722e30)
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 –:–:– –:–:– –:–:– 0* Connected to ****.*******.com (**.**.***.**) port 8001 (#0)
> GET /***** HTTP/1.1
> Host: ****.*******.com:8001
> User-Agent: curl/7.64.0
> Accept: */*
>
< HTTP/1.1 302 Found
< Server: Apache-Coyote/1.1
< Location: http://****.*******.com:8001/*****/
< Transfer-Encoding: chunked
< Date: Wed, 19 Aug 2020 13:54:25 GMT
<
{ [5 bytes data]
0 0 0 0 0 0 0 0 –:–:– –:–:– –:–:– 0
* Connection #0 to host ****.*******.com left intact

Print Friendly

发表评论

电子邮件地址不会被公开。 必填项已用*标注