zerossl returns retry-after header within "200 OK" code. so we don't check the "503" code anymore.
This commit is contained in:
parent
53ede7b0d8
commit
299a157409
58
acme.sh
58
acme.sh
@ -2222,40 +2222,40 @@ _send_signed_request() {
|
|||||||
|
|
||||||
_CACHED_NONCE="$(echo "$responseHeaders" | grep -i "Replay-Nonce:" | _head_n 1 | tr -d "\r\n " | cut -d ':' -f 2 | cut -d , -f 1)"
|
_CACHED_NONCE="$(echo "$responseHeaders" | grep -i "Replay-Nonce:" | _head_n 1 | tr -d "\r\n " | cut -d ':' -f 2 | cut -d , -f 1)"
|
||||||
|
|
||||||
if ! _startswith "$code" "2"; then
|
_body="$response"
|
||||||
_body="$response"
|
if [ "$needbase64" ]; then
|
||||||
if [ "$needbase64" ]; then
|
_body="$(echo "$_body" | _dbase64 multiline)"
|
||||||
_body="$(echo "$_body" | _dbase64 multiline)"
|
_debug3 _body "$_body"
|
||||||
_debug3 _body "$_body"
|
fi
|
||||||
fi
|
_retryafter=$(echo "$responseHeaders" | grep -i "^Retry-After *: *[0-9]\+ *" | cut -d : -f 2 | tr -d ' ' | tr -d '\r')
|
||||||
|
|
||||||
_retryafter=$(echo "$responseHeaders" | grep -i "^Retry-After *: *[0-9]\+ *" | cut -d : -f 2 | tr -d ' ' | tr -d '\r')
|
if [ "$code" = '503' ] || [ "$_retryafter" ]; then
|
||||||
if [ "$code" = '503' ]; then
|
_sleep_overload_retry_sec=$_retryafter
|
||||||
_sleep_overload_retry_sec=$_retryafter
|
if [ -z "$_sleep_overload_retry_sec" ]; then
|
||||||
if [ -z "$_sleep_overload_retry_sec" ]; then
|
_sleep_overload_retry_sec=5
|
||||||
_sleep_overload_retry_sec=5
|
|
||||||
fi
|
|
||||||
if [ $_sleep_overload_retry_sec -le 600 ]; then
|
|
||||||
_info "It seems the CA server is currently overloaded, let's wait and retry. Sleeping $_sleep_overload_retry_sec seconds."
|
|
||||||
_sleep $_sleep_overload_retry_sec
|
|
||||||
continue
|
|
||||||
else
|
|
||||||
_info "The retryafter=$_retryafter is too large > 600, not retry anymore."
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
if _contains "$_body" "JWS has invalid anti-replay nonce" || _contains "$_body" "JWS has an invalid anti-replay nonce"; then
|
if [ $_sleep_overload_retry_sec -le 600 ]; then
|
||||||
_info "It seems the CA server is busy now, let's wait and retry. Sleeping $_sleep_retry_sec seconds."
|
_info "It seems the CA server is currently overloaded, let's wait and retry. Sleeping $_sleep_overload_retry_sec seconds."
|
||||||
_CACHED_NONCE=""
|
_sleep $_sleep_overload_retry_sec
|
||||||
_sleep $_sleep_retry_sec
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
if _contains "$_body" "The Replay Nonce is not recognized"; then
|
|
||||||
_info "The replay Nonce is not valid, let's get a new one, Sleeping $_sleep_retry_sec seconds."
|
|
||||||
_CACHED_NONCE=""
|
|
||||||
_sleep $_sleep_retry_sec
|
|
||||||
continue
|
continue
|
||||||
|
else
|
||||||
|
_info "The retryafter=$_retryafter is too large > 600, not retry anymore."
|
||||||
|
return 1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
if _contains "$_body" "JWS has invalid anti-replay nonce" || _contains "$_body" "JWS has an invalid anti-replay nonce"; then
|
||||||
|
_info "It seems the CA server is busy now, let's wait and retry. Sleeping $_sleep_retry_sec seconds."
|
||||||
|
_CACHED_NONCE=""
|
||||||
|
_sleep $_sleep_retry_sec
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
if _contains "$_body" "The Replay Nonce is not recognized"; then
|
||||||
|
_info "The replay Nonce is not valid, let's get a new one, Sleeping $_sleep_retry_sec seconds."
|
||||||
|
_CACHED_NONCE=""
|
||||||
|
_sleep $_sleep_retry_sec
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
done
|
done
|
||||||
_info "Giving up sending to CA server after $MAX_REQUEST_RETRY_TIMES retries."
|
_info "Giving up sending to CA server after $MAX_REQUEST_RETRY_TIMES retries."
|
||||||
|
Loading…
Reference in New Issue
Block a user