There are many tutorials out there explaining how to set up nginx 1.4.6 as a load balancer but I did not get beyond receiving a 502 Bad Gateway
or 403 Forbidden
configuring it on an Ubuntu 14.04 server with ssh only (no apache or lighttpd, no application running).
After installing nginx and running the service, I get the default nginx page when I enter the domain (A record pointing to the IP of the machine).
The nginx.conf looks as follows. All I added is the upstream
and server config
.
This now results in displaying the default nginx page instead of showing the content on the servers defined for load balancing.
user www-data;
worker_process 4;
pid /run/nginx.pid;
events {
worker_connections 768;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
gzip on;
gzip_disable "msie6";
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
upstream appdomain.org {
server s1.appdomain.org;
server s2.appdomain.org;
}
server {
listen 80;
location / {
proxy_pass http://appdomain.org;
}
}
}