You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core 5 API使用Web Deploy部署时如何排除自动生成的web.config

解决方案

方案1:在项目源代码中提前配置web.config

ASP.NET Core 项目发布时默认会自动生成web.config,你可以直接在项目根目录添加自定义的web.config,预先配置好HTTPS相关规则后,修改文件属性:

  • 右键点击项目中的web.config,选择「属性」
  • 把「复制到输出目录」设置为「如果较新则复制」
  • 把「生成操作」设置为「内容」
    后续发布时会自动携带项目中预配置的web.config,不需要在服务器端手动修改,自然不会出现覆盖后配置丢失的问题。

方案2:配置Web Deploy跳过web.config同步

如果你必须单独在服务器端维护web.config配置,不希望发布操作覆盖该文件,可以修改发布配置文件跳过同步规则:

  1. 打开项目中对应发布配置的.pubxml文件,默认存放在项目根目录的Properties/PublishProfiles文件夹下
  2. 在文件的<PropertyGroup>节点内添加如下配置:
<ExcludeFilesFromDeployment>web.config</ExcludeFilesFromDeployment>
<EnableMSDeployAppOffline>true</EnableMSDeployAppOffline>
  1. 保存文件后重新发布,Web Deploy就不会再覆盖服务器上已有的web.config文件。

方案3:使用web.config转换规则

如果你需要针对不同发布环境配置不同的web.config规则,可以使用web.config转换功能:

  • 在项目中添加对应环境的转换文件,比如生产环境对应web.Release.config,在转换文件中配置生产环境需要的HTTPS规则
  • 发布对应环境版本时,Visual Studio会自动合并基础web.config和对应环境的转换规则,生成最终的web.config,不需要手动修改服务器端文件

内容的提问来源于stack exchange,提问作者Vanik Hakobyan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 11:09:01