我正在使用kpm pack生成我的部署,该部署通过ftp部署到Azure。我需要能够提供静态json文件,因此需要将以下内容添加到我的web.config中:

<system.webServer>
  <staticContent>
    <mimeMap fileExtension=".json" mimeType="text/html" />
  </staticContent>
</system.webServer>


问题是kpm pack会生成web.config,因此,完成此操作的唯一方法是在config部分生成后将config部分添加到web.config中。由于我正在通过ci进行自动部署,因此需要一些工作。有没有更好的方法可以做到这一点?

最佳答案

您应该将配置添加到web.config的源而不是目标。

如果要打包的项目的根目录中没有web.config,请创建一个。然后将静态内容配置添加到[project_root] /web.config。

“ kpm pack”将保留[project_root] /web.config中的所有配置,添加IIS所需的一些信息,然后将其写入wwwroot / web.config。

重要更新:

在“ kpm pack”中引入了更改:https://github.com/aspnet/KRuntime/pull/972

请将您的web.config从项目根目录移到wwwroot的源文件。

wwwroot文件夹的来源可以在project.json(https://github.com/aspnet/Home/wiki/Project.json-file#webroot)中用'webroot'指定。
您也可以使用“ kpm pack”的'--wwwroot'选项指定它。

10-04 11:57