Obtener la URL base de la raíz del sitio web (URL absoluta / relativa)

Quiero comprender completamente cómo usar la dirección de URL relativa y absoluta en archivos estáticos y dinámicos.

~  : 
/  :
.. : in a relative URL indicates the parent directory
 . : refers to the current directory
 / : always replaces the entire pathname of the base URL
// : always replaces everything from the hostname onwards

Este ejemplo es fácil cuando trabaja sin directorio virtual. Pero estoy trabajando en el directorio virtual.

Relative URI          Absolute URI
about.html            http://WebReference.com/html/about.html
tutorial1/            http://WebReference.com/html/tutorial1/
tutorial1/2.html      http://WebReference.com/html/tutorial1/2.html
/                     http://WebReference.com/
//www.internet.com/   http://www.internet.com/
/experts/             http://WebReference.com/experts/
../                   http://WebReference.com/
../experts/           http://WebReference.com/experts/
../../../             http://WebReference.com/
./                    http://WebReference.com/html/
./about.html          http://WebReference.com/html/about.html

Quiero simular un sitio a continuación, como mi proyecto que funciona en el directorio virtual.

Estas son mi carpeta aspx y ascx

http://hostAddress:port/virtualDirectory/MainSite/ASPX/default.aspx
http://hostAddress:port/virtualDirectory/MainSite/ASCX/UserCtrl/login.ascx

http://hostAddress:port/virtualDirectory/AdminSite/ASPX/ASCX/default.aspx

Estos son mis archivos JS (que se usarán con los archivos aspx y ascx):

http://hostAddress:port/virtualDirectory/MainSite/JavascriptFolder/jsFile.js
http://hostAddress:port/virtualDirectory/AdminSite/JavascriptFolder/jsFile.js

esta es la dirección de mi página web estática (quiero mostrar algunas imágenes y ejecutarlas dentro de algunas funciones js):

http://hostAddress:port/virtualDirectory/HTMLFiles/page.html

esta es mi carpeta de imágenes

http://hostAddress:port/virtualDirectory/Images/PNG/arrow.png
http://hostAddress:port/virtualDirectory/Images/GIF/arrow.png

si quiero escribir y el enlace del archivo de imagen en mi archivo ASPX, debería escribir

aspxImgCtrl.ImageUrl = Server.MapPath("~")+"/Images/GIF/arrow.png";

Pero si quiero escribir la ruta codificada o desde un archivo javascript, ¿qué tipo de dirección URL debería ser?

Respuestas a la pregunta(1)

Su respuesta a la pregunta