I have two web applications (node.js express apps), web1
and web2
. These web apps expect to be hosted on sites that are typically something like http://www.web1.com
and http://www.web2.com
. I'd like to host them behind an nginx reverse proxy as https://www.example.com/web1
and https://www.example.com/web2
. I do not want to expose the two web apps as two subdomains on example.com
.
Here is a snippet of my nginx configuration (without SSL termination details) that I had hoped would accomplish this:
server {
listen 443;
server_name .example.com;
location /web1 {
proxy_pass http://www.web1.com:80;
}
location /web2 {
proxy_pass http://www.web2.com:80;
}
}
This works, except for the relative links that the web apps use. So web app web1
will have a relative link like /js/script.js
which won't be handled correctly.
What is the best/standard way to accomplish this?