First, understand that what shows up in the location box of a browser is very browser specific. Without knowing the internals of every browser out there, it is impossible to control what any particular visitor will see in their browser's location bar when visiting your site.
That said, having tested six different browsers and versions, the best bet for what you're trying to do is to use frames.
Create the default page (perhapse "http://www.mydomain.com/index.html") as a frame document. Create the first frame as a very small frame at the top, bottom, or side of the browser window and configure it without borders, scrolling, or resizing (this will render the frame practically invisible). Then create a "main" frame for the rest of the browser window and load the document you want ("http://www.mydomain.com/main.html") into it. Anything linked to from "main.html" will be loaded into the same frame, but the location box in most browsers will still say "http://www.mydomain.com/" or "http://www.mydomain.com/index.html".
Total stealth is not possible. Anyone who knows how to use their browser can still find out the absolute path to your documents. Try [VIEW] + [PAGE INFO] in Netscape. They can also just look at the status bar on most browsers as their mouse pointer hovers over one of your links (but some clever javascript can eliminate that). If that doesn't work, they can always view the source of your page to see where they are loading pages from!
If you really need to hide your directory structure, you will have to encode every link on a page as a 'GET' request formatted to pass a page identifier to a script ("http://www.mydomain.com/loader.php?id=1055"). The script will then use the page identifier to output or "include" the appropriate file. In this case, the location box will almost always display the url as exampled above, but may be a load on your server as "loader.php" will be executed for every page request.
HTH
-- Rich Rijnders
-- Irvine, CA US