繁体   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