【问题标题】:IIS - Physical Path WrongIIS - 物理路径错误
【发布时间】:2016-09-13 13:01:14
【问题描述】:

我刚刚从 Win 7 升级到 Win 10,我的 IIS 现在也是 v10。在 Win 7 上浏览到我的 Web API 时,它可以正常工作。现在,在 Win 10 上,我得到一个 404 NOT Found。我只是打本地主机。我不明白的是为什么物理路径与IIS显示的不同,为什么物理路径中没有内容。

我的物理路径是这样的: C:\DevFs\Apps\MultipleModuleAssembly\Components\Main\MmaComponents\Source\Server\MmaWebApi

然而,当我浏览并得到失败时,我看到了这个:

为什么是用户文件夹中的物理路径? C:\Users\fs104679\Documents\我的网站\MmaWebClient-Site\MmaWebApi\api

运行应用程序时,为什么物理路径与我在 IIS 中设置的不同?

【问题讨论】:

  • 您的 MmaWebClient 站点的配置是什么样的?它是否可能处理请求而不是这个 API 站点? (路径中有...WebClient...)?
  • 客户端和Web API的路径都是“C:\DevFs...”而不是“C:\Users...”
  • IIS 中默认网站的路径是否正确?它是否指向 C:\DevFs?
  • 默认网站有:%SystemDrive%\inetpub\wwwroot。它在 Win 7 上使用相同的设置。
  • 有趣:如果我在文件资源管理器中浏览到 index.html,然后用 IE 打开它,就会出现该站点。所以看起来 IIS 没有连接到正确的路径/文件。

标签: asp.net iis windows-10


【解决方案1】:

刚刚遇到这个问题。

原来我们有一个在 IISExpress 中运行的网站,也绑定到端口 80。这似乎破坏了我们在 IIS 中的默认网站。停止 IISExpress 为我们修复了它。

更改了 IISExpress 站点的端口,使其不会再次发生。

确保您的端口映射在任何地方都是正确的。

【讨论】:

  • 您可以检查 IIS 是否使用 *:80: 绑定,而 IIS Express 使用 *:80:localhost。如果是这样,则 IIS Express 的绑定优先于 http://localhost 的请求,因为主机标头匹配。
【解决方案2】:

如果使用 Visual Studio。物理路径有可能存储在 .VS 文件夹下的 ApplicationHost.config 文件中。只需转到项目站点并将路径更改为正确的路径即可。

【讨论】:

    【解决方案3】:

    虚拟目录可以有一个带有重定向命令的 WEB.CONFIG 文件。因此,URL 指向配置的路径,WEB.CONFIG 将您重定向到另一个路径。

    【讨论】:

    • 小费+1。我不再有办法验证这是否真的是这样,但我不认为是这样。不过,很好的信息。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-15
    • 2015-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-10
    相关资源
    最近更新 更多