Welcome! Log In Create A New Profile

Advanced

upstream Fallback auf lokale Seite

Posted by kperas 
upstream Fallback auf lokale Seite
December 15, 2011 11:02AM
Hallo Forum, ich bin noch recht neu in nginx und versuche hier folgendes:

Ich möchte zwei Backendserver als SSL Proxy LoadBalancen, das klappt so weit. Dann muss ich noch eine Seite rewriten, das klappt auch. Was ich aber nicht hin bekomme ist: Ich will, wenn beide Backendserver von UPstream nicht mehr erreichbar sind einen Fallback auf eine Warungsseite, die lokal auf dem Nginx liegt. Ich dachte, ich kann das über upstream > weight machen, aber es will nicht.
Ich poste hier mal meine Konfig, wäre super, wenn mir jemand weiterhelfen könnte:

user nginx;
worker_processes 1;

#error_log logs/error.log;
error_log logs/error.log notice;
#error_log logs/error.log info;

pid logs/nginx.pid;


events {
worker_connections 1024;
}


http {
upstream online {
healthcheck_enabled;
healthcheck_delay 5000;
healthcheck_timeout 5000;
healthcheck_failcount 1;
server 10.194.1.10:8080 max_fails=2 fail_timeout=2s weight=2;
server 10.194.1.108:8080 max_fails=2 fail_timeout=2s weight=2;
server 10.194.100.50:8080 weight=5; ##Fallback
sticky;
ip_hash;
}
upstream org {
healthcheck_enabled;
healthcheck_delay 5000;
healthcheck_timeout 5000;
healthcheck_failcount 1;
server 10.194.1.107:8090 max_fails=2 fail_timeout=2s weight=2;
server 10.194.1.108:8090 max_fails=2 fail_timeout=2s weight=2;
server 10.194.100.50:8080 weight=5; ##Fallback
sticky;
ip_hash;
}
gzip on;
server {
listen 10.194.100.50:8080;
server_tokens off;
if ($request_method !~ ^(GET|HEAD|POST)$ ) {
return 444;
}
index index.html;
root /var/www;
rewrite ^ http://10.194.100.50:8080/index.html;
}
server {
listen 10.194.100.50:80;
server_name www.example.de;
rewrite ^ http://www.example.de/de/examples/example.php?thisID=44 permanent;
}
server {
ssl on;
ssl_prefer_server_ciphers on;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers HIGH:!SSLv2:!ADH:!aNULL:!eNULL:!NULL;
listen 10.194.100.50:443 ssl;
ssl_certificate ssl/nginx-test.crt;
ssl_certificate_key ssl/nginx-test.key;
keepalive_timeout 60;
server_tokens off;
if ($request_method !~ ^(GET|HEAD|POST)$ ) {
return 444;
}
server_name org;
location /org {
proxy_pass http://org;
}
server_name online;
location /online {
proxy_pass http://online;
}
}
}

Die Fragen:
Geht das mit dem Fallback überhaupt, was ich vorhabe?
Gibt es ansonsten Verbesserugsvorschläge an meiner Konfig?

Danke schonmal



Edited 1 time(s). Last edit at 12/15/2011 11:11AM by kperas.
Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 248
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready