How to set Amazon Route53 for multiple distinct domains on the same IP address?

Solution 1:

This isn't a Route53 problem. So long as your request for a domain name is mapped to the correct IP then Route53 has done its job. You don't even need different ports, Server Name Indication (SNI) lets you have as many IPs as you like on the same IP for http or https.

I suspect your issue is with your Nginx or downstream config. That config you pasted above looks about right to me, but I haven't done much with Nginx in a while.

Solution 2:

Most likely this could be nginx issue, did you restarted nginx after making changes to config?

Just to make sure, you not using the same dns record as you using for first site which would be a CNAME record pointing to cloudfront.

Update your nginx server block to include both the name (naked domain + your www as you trying to access using in the example you shared:

 server {
    listen 80;

    server_name domainnameone.com www.domainnameone.com;

    location / {
        proxy_pass http://localhost:3000;
    }
}

server {
    listen 80;

    server_name domainnametwo.com www.domainnametwo.com;

    location / {
        proxy_pass http://localhost:9000;
    }
}

Solution 3:

You need to create a server block in nginx, or use an existing one, which contains a server_name matching the hostname you are trying to use. You have twice used hostnames that are not shown in the nginx configuration you posted, so you need to add them.