0

我的本地 IIS 在这里遇到了一个非常奇怪的情况。我在本地 IIS 的默认网站中托管了多个站点。其中之一有登录页面。从登录页面,我将用户重定向到位于另一个站点的另一个页面(该站点也托管在默认网站虚拟目录内的同一 IIS 中)。

现在在我的登录页面的提交按钮单击事件中,在验证用户身份后,我编写了一个“ Response.Redirect( redirect_url ) ”。redirect_url是动态形成的,并作为 Redirect 方法的参数提供

调试时,作为参数发送给Redirect方法的最终redirect_url是:

http://localhost/CP/web/console/console.aspx?sk=3e3cc1a8-73c4-4945-b3f8-08af22ea4324.50008

但是在我尝试进入下一步之后,我突然收到一个 HTTP 404 错误,说资源不存在,我观察到错误页面中显示的请求 URL与动态发送到响应的不同.Redirect(...)方法。

在错误页面中,请求的 url将值显示为

http://localhost/CP/web/console/localhost/CPLogin?err=5

而我在代码中形成的实际请求的 url是:

http://localhost/CP/web/console/console.aspx?sk=3e3cc1a8-73c4-4945-b3f8-08af22ea4324.50008

我只是无法理解为什么请求的网址会自动更改。!此外,我观察到“localhost”再次被附加到请求的 URL,这不是应该发生的。

请访问此链接[^] 以更清楚地理解此问题。我添加了错误页面的屏幕截图。

http://amoghnatu.wordpress.com/2013/09/16/question-please-help-iis-throwing-http-404-not-found-but-requested-resource-actually-exists-requested-url-also-自动更改/ [^]

非常感谢。!

4

2 回答 2

0

事实上,问题在于我在应用程序中托管网站的方式。我刚刚从 IIS 中删除了与我的应用程序相关的所有站点,然后更加小心地再次托管所有这些站点。这解决了“错误的重定向 url”问题。

此外,我有一些表缺少必需的数据,因此我得到了错误代码。

因此,在我将所有表格都填满了所需的数据并在 IIS 中正确托管应用程序之后,我的问题得到了解决。

于 2013-10-31T05:33:41.170 回答
0

在 IIS 中,转到相关文件夹,右键单击并“浏览”。看看什么是网址。在大多数情况下,这是因为 URL 应附加端口号。例如,它将类似于:

http://localhost:<port number>/CP/web/console/console.aspx?sk=3e3cc1a8-73c4-4945-b3f8-08af22ea4324.50008

代替

http://localhost/CP/web/console/console.aspx?sk=3e3cc1a8-73c4-4945-b3f8-08af22ea4324.50008
于 2018-02-18T11:52:03.183 回答