【问题标题】:IIS throwing HTTP 404 not found but resource exists. Requested URL also changing automatically.!IIS 未找到抛出 HTTP 404 但资源存在。请求的 URL 也会自动更改。!
【发布时间】:2013-09-20 14:26:43
【问题描述】:

我的本​​地 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 错误,说资源不存在,我观察到 Requested URL 错误页面中显示的内容与动态发送到 Response.Redirect(...) 方法的内容不同。

在错误页面中,requested 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,这不是应该发生的。

Please visit THIS link[^] 更清楚地理解这个问题。我添加了错误页面的屏幕截图。

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

非常感谢!

【问题讨论】:

    标签: c# http iis-7.5 http-status-code-404 response.redirect


    【解决方案1】:

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

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

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

    【讨论】:

      【解决方案2】:

      在 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
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-07-13
        • 2016-05-24
        相关资源
        最近更新 更多