gpt4 book ai didi

c# - 覆盖应用程序根 URL 的真正作用是什么?

转载 作者:可可西里 更新时间:2023-11-01 07:46:38 24 4
gpt4 key购买 nike

在整个互联网上我唯一能找到解释的地方是 MSDN :

Specifies an alternative path for the application root URL. Use this option if the Web application root is not the root of your project.

来自 here我知道“应用程序根”是在 ASP.NET 中使用波浪号时检索的路径。所以我希望如果我转到项目的属性 - Web - “覆盖应用程序根目录”并指定另一个 url,则波浪号将映射到该 url。

但事实并非如此。例如我的网站在一个虚拟目录上 - http://localhost/WebApplication1在“Override application root”上,我尝试指定 http://localhost/WebApplication2http://localhosthttp://WebApplication2(它们都存在于我的本地 IIS 上)。现在当我写

Response.Redirect("~/test2/login");

我希望它将我重定向到 http://localhost/WebApplication2/test2/login。但它会将我重定向到 http://localhost/WebApplication1/test2/login 就好像我没有覆盖“应用程序根目录”一样。

那么这个功能到底想做什么呢?或者可能它不起作用是因为我遗漏了一些东西并且没有正确定义它?

最佳答案

覆盖应用程序根 URL 不会更改应用程序根在您的应用程序中的位置。它更改用于到达应用程序根目录的 URL。因为 IIS 会执行一些主机名验证,所以它用于指定是否要通过 localhost:[PORT] 以外的方式访问您的应用程序。

例如,如果您将它覆盖到 www.myapp.com,您可以通过将其添加到您的主机文件来访问您的应用程序:

127.0.0.1     www.myapp.com

如果您要让远程设备(计算机上的虚拟机或网络上的移动设备)可以使用您的应用程序,这可能特别有用,因为它们将无法导航到 localhost作为申请地址。

关于c# - 覆盖应用程序根 URL 的真正作用是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43888687/

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