如何通过 IIS 在 Visual Studio 中调试时删除 URL 段

How to remove a URL segment when debugging in Visual Studio via IIS

根据文档“How to: Specify a Port for the ASP.NET Development Server”。例如,如果您正在测试名为 MyPage.aspx 的页面,当您在 Visual Studio 开发服务器上 运行 页面时,页面的 URL 可能如下所示:

http://localhost:31544/MyPage.aspx

由于 IIS Express 是 Visual Studio 2012 年 Web 应用程序项目的默认 Web 服务器。我更改了项目的属性,如下所述:

以前,我能够使用该方法毫无问题地调试我的 .Net MVC 项目。

但是最近,每次我调试我的项目时,都会随机生成第二个 URL 的片段,如下所示:

http://localhost:5086/(S(ffi1hjahbgr1qcwzhziq2wo3))/MyPage.aspx

http://localhost:5086/(S(m3nq32tgyznmc04s5htp1exo))/MyPage.aspx

我应该如何删除第二个片段?

您似乎已经配置了 ASP.NET Cookieless sessions for your ASP.NET application。这将生成您所看到的 Url 类型。

ASP.NET MVC 不支持此功能,因此您需要将其关闭。

在您的 web.config 中查找 <authentication><forms> 元素和 set the cookieless option to useCookie。 ASP.NET MVC 不支持其他值,并且存在关于 Cookieless 会话功能的已知安全漏洞,因为可以使用 Javascript 和中间人设置轻松拦截 te URI 令牌,允许其他人可以轻松地劫持会话。

另请参阅: