If your site doesn't work in a virtual directory (the technical name for what you're describing) then you haven't coded it properly. You are probably constructing your own urls rather than getting the framework to construct them for you, eg you have code like;
<a href="/Account/Login">Login</a>
instead of
<a href="@Url.Action("Login", "Account")">Login</a>
If you code correctly your site will work.