gpt4 book ai didi

asp.net - IIS 6 网站根目录与应用程序?解决Url()?

转载 作者:行者123 更新时间:2023-12-02 16:48:50 25 4
gpt4 key购买 nike

IIS 6ASP.NET 3.5(C#.NET)

我们遇到一个问题,即同一组文件的行为会有所不同,具体取决于它是根 IIS 网站还是 IIS 网站下的应用程序。使用 ResolveUrl 生成的网址() 不同 - 即:

<a href="<%=ResolveUrl("~/contact.aspx") %>">Contact Us</a>

两者都使用相同的文件。第一个示例是其自己的网站,第二个示例是制作成应用程序的虚拟目录(名为 DSC)。两者还使用相同的应用程序池以及相同的配置、文档和安全设置(我确保两者之间 IIS 中的所有设置都相同)。

所有研究表明 ResolveUrl() 确实引用了网页所在的 IIS 应用程序。我还读过一些地方,即使信息未在 IIS 中完成(在本例中是),根网站也被视为应用程序。因此,它应该生成适当的网址,但事实并非如此。

任何帮助寻找更多的研究来确定哪些设置/配置设置不正确,或者为什么 ResolveUrl() 不应该以编程方式使用。

最佳答案

看看这个:From Relative Path to Absolute Path in ASP.NET without using the Tilde ~ 。您可以考虑用 HttpRuntime.AppDomainAppVirtualPath 替换波浪号 (~) 用法。如果 Web 应用程序位于服务器根文件夹中,AppDomainAppVirtualPath 仅返回“/”。如果 Web 应用程序位于非根文件夹中,它将返回末尾不带“/”的文件夹的虚拟路径 ( source )。

关于asp.net - IIS 6 网站根目录与应用程序?解决Url()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5239226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com