Here is my situation: I will have one frontend server running nginx, and multiple backends servers running apache + passenger with different rails applications. I am NOT trying to do any load balancing. What I need to do is setup nginx to proxy connections to specific servers based on the url. IE, client.domain.com should point to x.x.x.100:80, client2.domain.com should point to x.x.x.101:80, etc.
I am not that familiar with nginx, but I could not find a specific configuration online that fit my situation.
Thanks.
You can match the different URLs with server {}
blocks, then inside each server block, you'd have the reverse proxy settings.
Below, an illustration;
server { server_name client.domain.com; # app1 reverse proxy follow proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://x.x.x.100:80; } server { server_name client2.domain.com; # app2 reverse proxy settings follow proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://x.x.x.101:80; }
Also, you may add further Nginx settings (such as error_page
and access_log
) as desired in each server {}
block.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With