簡體   English   中英

IIS虛擬目錄和ASP.NET目錄路徑

[英]IIS virtual directory and ASP.NET directory paths

問題

我遇到了典型的虛擬目錄困境,因為您在ASP.Net應用程序上有一些路徑,並且您將應用程序部署在IIS虛擬目錄中。 然后所有與“web根”(fi,“/ images”)相關的路徑都不起作用,因為應用程序位於虛擬目錄路徑中。


解決方案

A.將“images”文件夾設為虛擬目錄。 這樣“/ images”將永遠存在。

B.使用"<%=Request.ApplicationPath%>/Imagenes"作為我的圖像的來源。 這在IIS中很有用,但我無法在設計時和調試時看到它。

此解決方案還包括以下說明:

  • System.Web.VirtualPathUtility.ToAbsolute
  • ResolveClientUrl
  • Request.ApplicationPath

C.使用當前控件/頁面的親戚路徑。 這確切地知道images文件夾相對於我當前文件的位置(沒有轉到root。所以我會使用像“”,“../”,“../../”之類的東西等等。


我正在尋找的解決方案

說。 我不喜歡這些解決方案。 我想在web.config文件或IIS中找到解決方案。 我在web.config文件中寫了一些內容,告訴IIS我的應用程序實際駐留在哪里(虛擬目錄)。

有什么建議?

你在路徑上使用波浪號(〜)嗎?

〜指的是虛擬Web應用程序的根....

〜/圖像例如。

如果只是客戶端的css文件,則使用url指令使路徑相對於樣式表而不是頁面:

h1#title { background: url('dog.gif') no-repeat 0 0; } 

此外,如果您使用的是asp.net mvc,那么您可以訪問:

<script src="<%= Url.Content("~/scripts/new.js") %>" type="text/javascript"></script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM