I want to show different url in the address bar rather than actual url.
In general: You can't.
The History API allows you to manipulate the history to show different URLs without changing page … but only within the same origin. (So you could be on http://example.com/
but show http://example.com/other
but not http://example.net/
).
This is intended so that heavily Ajaxy websites can have real URLs for different "pages" while generating the pages client-side. The intention is that the same pages can be generated server-side when the URL is visited directly or by a client which doesn't support JavaScript. This allows for search engine friendly, accessible content, with a performance boost while navigating from page to page within the site when the client allows it.
It is possible for one URL to serve the same content as another URL. This could be a simple static copy, or it could be pulled dynamically with server-side code (or Ajax if the CORS policy allows it).
Of course, all relative URLs would need to be updated when the content is copied otherwise they will just break.
Naturally, you couldn't use this to make http://www.google.com/
display the same content as http://www.hotmail.com
: You don't control http://www.google.com
so cannot change the content it serves.