Questions tagged [reverse-proxy]

A reverse proxy is a type of proxy server that fetches resources from a specific defined set of servers for a client. It is used in cases when there is an advantage to not exposing the web server with the content directly whether it be for security reasons or because of a lack of available public IP addresses.

A reverse proxy is a type of server. Unlike a traditional "forward proxy" server, a reverse proxy fetches resources from a specific defined set of servers for a client. The Apache HTTPD server's mod_proxy module is a popular example of software that can be used as a reverse proxy.

A reverse proxy can be used in cases when there is an advantage to not exposing the server with the content directly to the Internet, whether it be for security reasons or because of a lack of available public IP addresses.

3080 questions
282
votes
5 answers

Nginx reverse proxy + URL rewrite

Nginx is running on port 80, and I'm using it to reverse proxy URLs with path /foo to port 3200 this way: location /foo { proxy_pass http://localhost:3200; proxy_redirect off; proxy_set_header …
jeffreyveon
  • 2,985
  • 3
  • 14
  • 7
168
votes
4 answers

What is the difference between Load Balancer and Reverse Proxy?

I'm not clear about the difference between Load Balancer and Reverse Proxy. They both seems having same behavior: distributing incoming requests to backend servers.
Morgan Cheng
  • 2,004
  • 2
  • 16
  • 13
151
votes
13 answers

How to set up Nginx as a caching reverse proxy?

I heard recently that Nginx has added caching to its reverse proxy feature. I looked around but couldn't find much info about it. I want to set up Nginx as a caching reverse proxy in front of Apache/Django: to have Nginx proxy requests for some (but…
Continuation
  • 3,050
  • 5
  • 29
  • 38
140
votes
7 answers

Make nginx to pass hostname of the upstream when reverseproxying

I run several docker containers with hostnames: web1.local web2.local web3.local Routing to these done based on hostname by nginx. I have a proxy in front of this setup (on different machine connected to internet) where I define upstream as: …
pavel_karoukin
  • 1,531
  • 2
  • 10
  • 5
100
votes
2 answers

an upstream response is buffered to a temporary file

I have a rather large and slow (complex data, complex frontend) web application build in RoR and served by Puma with nginx as reverse proxy. Looking at the nginx error log, I see quite a few entries like: 2014/04/08 09:46:08 [warn] 20058#0: *819237…
ngw
  • 1,201
  • 3
  • 13
  • 15
84
votes
4 answers

Can IIS be configure to forward request to another web server?

I have several web site set up on one IIS 6 server distinguished by Host Header. However, I wish to have one of the sites served by a Linux / Apache server on my network. Do I need to use a reverse proxy add-in for IIS, or is there a simple way to…
Daniel O
  • 1,075
  • 1
  • 8
  • 9
73
votes
3 answers

How to handle relative urls correctly with a reverse proxy

I have a reverse proxy setup as follows in Apache: Server A with address www.example.com/folder is the reverse proxy server. It maps to: Server B with address test.madeupurl.com This kind of works. But the problem I have is, on…
Hard worker
  • 839
  • 2
  • 8
  • 11
73
votes
4 answers

nginx real_ip_header and X-Forwarded-For seems wrong

The wikipedia description of the HTTP header X-Forwarded-For is: X-Forwarded-For: client1, proxy1, proxy2, ... The nginx documentation for the directive real_ip_header reads, in part: This directive sets the name of the header used for…
Kirk Woll
  • 833
  • 1
  • 7
  • 7
54
votes
3 answers

Configure Nginx as reverse proxy with upstream SSL

I try to configure an Nginx server as a reverse proxy so the https requests it receives from clients are forwarded to the upstream server via https as well. Here's the configuration that I use: http { # enable reverse proxy proxy_redirect …
Alex Flo
  • 1,711
  • 3
  • 17
  • 23
51
votes
3 answers

Proxy HTTPS requests to a HTTP backend with NGINX

I have nginx configured to be my externally visible webserver which talks to a backend over HTTP. The scenario I want to achieve is: Client makes HTTP request to nginx which is redirect to the same URL but over HTTPS nginx proxies request over…
Mike
  • 825
  • 2
  • 8
  • 10
47
votes
7 answers

Is there a name based virtual host SSH reverse proxy?

I've grown quite fond of HTTP reverse proxies in our development environment and found the DNS based virtual host reverse proxy quite useful. Having only one port (and the standard one) open on the firewall makes it much easier for management. I'd…
ahanson
  • 1,674
  • 2
  • 15
  • 21
47
votes
3 answers

Why is setting Nginx as a reverse proxy a good idea?

I have a Django site running on Gunicorn with a reverse proxy through Nginx. Isn't Nginx just an extra unnecessary overhead? How does adding that on top of Gunicorn help?
TheOne
  • 595
  • 1
  • 5
  • 6
43
votes
5 answers

Nginx vs Apache as reverse proxy, which one to choose

this kind of question maybe has been asked here but I couldn't find any that really match my question. Heard that nginx performance is quite impressive, but Apache has more docs, community(read:expert) to get help Now what I want to know, how both…
mhd
  • 593
  • 1
  • 5
  • 8
41
votes
4 answers

How can I debug nginx further than the error log?

I'm currently receiving a fairly large HTTP flood right now, and it's causing my nginx reverse proxy to produce a 502 Bad Gateway. I have a frontend server running nginx as a proxy to my backend server, but it's just getting a bunch of connect()…
Rob
  • 2,303
  • 9
  • 31
  • 50
40
votes
3 answers

What tools are available on Windows to simulate/emulate network issues?

I am looking for tools for Windows that can act as a reverse-proxy in front of a server to introduce various networking issues like jitter, delays, or packet loss. My preference is a software solution that will work on Windows. Httpd mod_proxy…
Scott Markwell
  • 722
  • 1
  • 6
  • 13
1
2 3
99 100