Commit 3744b143 authored by Yuri Aksenov's avatar Yuri Aksenov

Added check if server down

parent 2c73cec0
#!/bin/sh
UCI_GET="/sbin/uci -q get"
ERRORS="403 404 500 501 502 503"
ADDRESS=`$UCI_GET proxy.failover.address`
generate_config() {
#ADDRESS="10.1.1.1;10.1.1.2;10.1.1.3"
IFS=";" read -a ADDRESSES <<< "$ADDRESS"
length=${#ADDRESSES[*]}
config="location / {proxy_intercept_errors on;proxy_pass ${ADDRESSES[0]};error_page 403 404 = @fallback1;}"
for ((i=1; i<$length-1; i++)); do
config="$config location @fallback$i {proxy_intercept_errors on;proxy_pass "
config="$config${ADDRESSES[$i]}"
config="$config;error_page 403 404 = @fallback$((i+1));}"
done
config="$config location @fallback$i {proxy_pass ${ADDRESSES[-1]};}"
IFS=";" read -a ADDRESSES <<< "$ADDRESS"
length=${#ADDRESSES[*]}
config="location / {proxy_intercept_errors on;proxy_pass ${ADDRESSES[0]};error_page $ERRORS = @fallback1;}"
for ((i=1; i<$length-1; i++)); do
config="$config location @fallback$i {proxy_intercept_errors on;proxy_pass "
config="$config${ADDRESSES[$i]}"
config="$config;error_page $ERRORS = @fallback$((i+1));}"
done
config="$config location @fallback$i {proxy_pass ${ADDRESSES[-1]};}"
}
generate_config
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment