Is it possible to deploy front end and back end on two different servers with same domain?

Solution 1:

Nginx will let you send requests to whichever server you like, based on URL. It can also cache if desired. Nginx is fast, simple, and has low resource requirements, it could be installed on one of your existing servers.

Many other products do this - Apache, HAProxy, etc. The tool you're looking for is probably best called a load balancer.

Update

I just noticed your AWS tag, which wasn't mentioned in your question text. AWS Application Load Balancer could be a better choice than deploying Nginx. It may end up more expensive, but managed services tend to be more reliable than individual servers.

Solution 2:

On Amazon Web Services you can also use an ELB with the Application Load Balancer type to split requests to separate servers based on hostname and path. This method has the added bonus of allowing you to do SSL at the load balancer and setup Amazon Certificate Manager to automatically provision and renew the SSL certificate.