开发者

How to link to the home URL in a subdirectory when the base href is set to that subdirectory?

Here an e开发者_C百科xample of my base URL

<base href="http://subdomain.example.com/folder/" />

I would like to know how to call that base URL for the HOME link when I try

<a href="/">Home</a>

It goes to http://subdomain.example.com/ and does not include /folder/.


What you need is the virtual directory name of your application/website.
This is a server variable, and it is not possible to get it in HTML alone, you need some server side component, like PHP or ASP.NET.

If you are in the root directory, you can try a relative link.
So try using a . to indicate "from this folder"

<a href="./">Home</a>

Should your question actually concern the opposite direction, do this:
<a href="../">Home</a>

Or use an absolute link:
<a href="/folder">Home</a>

Or use a canonical link

<a href="http://subdomain.domain.com/folder">Home</a>

By the way, you could also set a protocol-relative-link:

<a href="//subdomain.domain.com/folder">Home</a>

Or if you know where exactly you are right at the moment of the http-request relative to the root, you can infer the root directory link in JavaScript: e.g. assuming you have "index.htm" in the root-directory, then from a javascript in index.htm, you can get the virtual directory name like this:

document.location.pathname.substr(0, document.location.pathname.length-"index.htm".length)


test case

It appears that if you are going to start your url (a url that depends on a base url that is) with a /, you need to specify that this is from the current directory level. Thus your link should be

<a href="./">Home</a>


ADLADS (A Day Late - A Dollar Short)
I got here and can't relate to the dialog.
For me, I find that I wanted

<a href="/index.html">Home</a>

Maybe someone else wants this?


Concatenate host name with application path and http/https should give you home URL. code below

<a href="https://@Request.Url.Host@Request.ApplicationPath">Home</a>


Try not to put anything in your HREF, that is, make an empty HREF.

This works in latest Firefox, Chrome, Opera, Safari and IE7, IE8, IE9.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜