Route 53 Record Set on Different Port

gverri picture gverri · Oct 13, 2013 · Viewed 21.5k times · Source

I'm a ruby dev and I just started to learn some Node.js.

I'm running an instance on AWS to host my rails apps with passenger + nginx listening on port 80.

Now I would like to host a node.js app on the same instance (t1-micro) and put it to listen on port 8000.

How can I use Route 53 to create a Record Set to point a subdomain.domain.com to my.ip:8000?

I already tried setting an IPV4 record pointing to my.ip:8000 with no success.

Any idea what I'm doing wrong?

Can I use nginx to serve my nodejs apps?

Answer

stelo picture stelo · Feb 22, 2018

This is possible through S3 redirection. Create a S3 bucket with the name

subdomain.domain.com

This bucket does not need to be public. Then, turn on Static Website Hosting in Properties and choose the Redirect response option and configure it with the following options

Target bucket or domain: my.ip:8000
Protocol: Leave this blank

Then go to Route53 and create a Record Set with the following configuration

  • Name: subdomain.domain.com
  • Type: A-IPv4 address
  • Alias: Yes
  • Alias Target: Choose the bucket you just created in S3. If it does not appear wait for it to appear.
  • Routing Policy: Simple
  • Evaluate Target Health: No

And that's it, you should be able to go to subdomain.domain.com and see the changes take effect after roughly 30 seconds. Best of luck!