On Wed, Sep 09, 2020 at 01:58:42AM -0400, figshta wrote: Hi there,
> I have two servers behind on IP address. What does that mean, in terms of "traffic to the IP address gets sent to server#1 or to server'2"? > Server1 is hosting several websites > all using TLS exclusively. That suggests that all incoming traffic to your IP on port 443 gets sent to server#1. > Recently I set up Server2 and setup one website using reverse proxy from > Server1 and finally successfully deployed TLS on it as well. > During that setup I had to use port 80 to use Certbot with Let's Encrypt. > Now I'm trying to do it again the same way with another domain. > The proxy_pass directive works on port 8080, but when I switch it to port 80 > I get a 404 error. What request do you make that returns the 404 error? What response do you want for that request? (Probably something like "http 200 and the contents of *this* file".) (And: what does the nginx log file say about the 404 error? Is it trying to read a different file from what you expect?) > Here is setup in question: (again, Port 8080 works, but port 80 does not) > > ---------------------------------- > #Proxy server (Server1) > > # threedaystubble.com server > server { > listen 80; > server_name www.threedaystubble.com threedaystubble.com; > location / { > proxy_pass http://192.168.3.5:80; With that config, your server#2 will not see a Host: header that includes threedaystubble.com. If your server#2 needs that Host header, things will probably break. > #Proxied Server (Server2) > > server { > listen 80; > > server_name threedaystubble.com www.threedaystubble.com; > > root /var/www/threedaystubble.com; > > location / { > } > > } If that is the entire config on server#2, it should probably work. But if you have more server{} blocks, such that the "default" port-80 server is something else, then that extra config might be causing this not to act in the way that you want. > Any help would be greatly appreciated. Depending on what else is wanted, I'd suggest one of the methods to make sure that the Host: header that you want, is sent to server#2 in the proxy_pass request from server#1. That can be proxy_set_header; or proxy_pass with the hostname and either an upstream of the hostname, or the system resolver to refer to the server#2 address. (Or: just use port 8080 on server#2 for this site; and port 8081 on server#2 for the next site.) Good luck with it, f -- Francis Daly fran...@daoine.org _______________________________________________ nginx mailing list nginx@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx