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

IIS 10中主应用访问子.NET 6应用时URL莫名追加端口号问题

排查方向

1. 核对IIS站点与应用池核心配置

  • 确认主WebForms站点的HTTPS绑定端口为标准443,排查是否存在站点级的额外绑定(比如绑定了44340端口),导致子应用继承错误端口
  • 检查.NET6子应用的应用池是否设置为无托管代码(进程内托管的.NET Core应用必须配置此项),同时查看应用池高级设置中的"端口"字段,确认未被错误设置为44340

2. 检查.NET6应用的托管与启动配置

  • 打开子应用的web.config,查看<aspNetCore>节点的arguments参数,确认没有硬编码--urls=https://*:44340这类指定端口的配置
  • 检查Program.cs代码,确认不存在强制绑定端口的逻辑,比如:
    builder.WebHost.UseUrls("https://*:44340");
    
    生产环境应移除这类硬编码,交由IIS管控端口

3. 排查URL重写与规则继承问题

  • 检查主WebForms站点的URL重写模块规则,确认是否存在错误追加44340端口到子应用请求的规则
  • 可在子应用的web.config中添加<clear />清除继承的重写规则,测试是否解决端口追加问题

4. 验证服务器网络与DNS配置

  • 查看生产服务器的hosts文件,确认baseurl.site没有被异常映射到带44340端口的地址
  • 检查服务器前端的负载均衡/反向代理设备(如NGINX、硬件负载均衡器),确认转发请求时未错误追加端口

5. 检查请求拼接逻辑与中间件

  • 查看WebForms主应用中调用.NET6端点的代码,确认是否存在误将调试端口(44340)当成生产端口拼接URL的逻辑
  • 排查.NET6应用的Startup.cs,确认自定义中间件、Swagger等组件未修改请求的URL端口

6. 排查IIS ARR(应用程序请求路由)配置

  • 若服务器启用了ARR,检查服务器场的端口映射配置,确认未将子应用请求转发到44340端口
  • 查看ARR日志,定位请求转发过程中端口被修改的节点

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 11:22:38