当我试图运行我的应用程序时,我得到这个错误消息。我不知道怎么解决:

HTTP错误404.3 -未找到页面 您所要求的服务无法提供 因为延伸 配置。如果页面是 脚本,添加一个处理程序。如果文件 应该下载,添加一个MIME映射。

下面是错误页面的截图:

我能做什么来修复这个错误?


当前回答

在我的情况下,我需要为每个文件扩展名添加MIME类型,我想为web配置服务:

<system.webServer>
    <staticContent>
      <mimeMap fileExtension=".shp" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".dbf" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".kml" mimeType="text/xml" />
    </staticContent>
    ...
</system.webServer>

其他回答

顺便说一下,我刚刚发现了这个帖子: http://blogs.msdn.com/b/webtopics/archive/2010/03/19/iis-7-5-how-to-enable-iis-configuration-auditing.aspx 它解释了如何审计IIS上的更改。对于那些面临类似问题的人,我建议打开审计,然后查看站点停止工作的原因。

要添加一个扩展,以便在IIS中服务

打开IIS管理器并导航到要管理的级别。 在功能视图中双击MIME类型。 在Actions窗格中,单击Add。 在“添加MIME类型”对话框中,在“文件扩展名”文本框. ...中输入文件扩展名键入MIME类型 在MIME类型文本框中。 单击OK。

PHP 7.3应用程序IIS在Windows Server 2012 R2

这对我来说是一个两步的过程。

1)启用WCF服务-重启服务器

2)添加FASTCGI模块映射

1)

进入“服务器管理器”>添加角色和特性 从服务器池中选择您的服务器 进入功能> WCF服务 我选择了所有类别然后安装

2)

去IIS >选中的站点 在中心窗格中选择处理程序映射 右边窗格选择添加模块映射

在编辑窗口内:

请求路径:*.php

模块:FastCgimodule

可执行文件:我浏览到PHP文件夹中的PHP -cgi.exe

名称:PHP7.3

现在我想起来了。也许有一种方法可以在web配置中添加这个处理程序映射,这样如果你把你的网站迁移到另一个服务器上,你就不必一遍又一遍地添加这个映射。

编辑:在这里。将此添加到web-config部分。

<add name="PHP-FastCGI" verb="*" 
  path="*.php" 
  modules="FastCgiModule"
  scriptProcessor="c:\php\php-cgi.exe" 
  resourceType="Either" />

如果你试图查看一个无扩展名的文件,对我来说是添加一个MIME类型:文件扩展名:。MIME类型:文本/纯

这可能会有一些MVC的影响,特别是如果你的静态文件处理程序在无扩展…处理程序(在IIS /处理程序映射下),但当你只是暂时需要它时,可能是一种解决方法,比如激活SSL Certs。

在我的情况下,我需要为每个文件扩展名添加MIME类型,我想为web配置服务:

<system.webServer>
    <staticContent>
      <mimeMap fileExtension=".shp" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".dbf" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".kml" mimeType="text/xml" />
    </staticContent>
    ...
</system.webServer>