Iis 404未找到具有查询子路径的文件或目录

Iis 404未找到具有查询子路径的文件或目录,iis,Iis,IIS 10正在抛出错误 404 File or directory not found 仅当我尝试使用如下子文件夹路径访问url时: http://myserveraddress.com/object/181 因此,它在没有子文件夹的情况下工作。Angular使用子文件夹路径查询rest接口,因此它后面没有物理文件夹路径,只是用于在schene后面查询 这实际上在本地主机上运行时有效,但在服务器上不起作用 是否可以将IIS配置为允许任何url路径,即使物理文件夹路径不存在?这更像是一个处理

IIS 10正在抛出错误

404 File or directory not found
仅当我尝试使用如下子文件夹路径访问url时:

http://myserveraddress.com/object/181
因此,它在没有子文件夹的情况下工作。Angular使用子文件夹路径查询rest接口,因此它后面没有物理文件夹路径,只是用于在schene后面查询

这实际上在本地主机上运行时有效,但在服务器上不起作用


是否可以将IIS配置为允许任何url路径,即使物理文件夹路径不存在?

这更像是一个处理程序配置问题,而且如果您的服务器是全新的服务器,可能是因为您尚未安装处理您的请求的处理程序,如果我必须接受一个请求,如果您没有配置所需的rest处理程序,它将转到静态文件处理程序,该处理程序尝试在请求url路径中查找文件夹,并抛出一个错误,如果您已经运行了安装程序,检查安装在那里的所有处理程序和先决条件,并模拟新服务器中的设置

解决方案是将其添加到Angular client web.config文件中

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="AngularJS Routes" stopProcessing="true">
          <match url=".*" />
          <conditions logicalGrouping="MatchAll">
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
          </conditions>
          <action type="Rewrite" url="/" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>