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

ASP.NET Core项目迁移到C盘后IIS Express访问API返回404如何排查解决

排查与解决方案

1. 清理IIS Express及VS缓存

IIS Express会为每个站点路径生成独立的绑定缓存,项目迁移路径后旧缓存不会自动更新,会直接导致路由映射失败返回404,按以下步骤清理:

  • 关闭所有运行中的IIS Express实例、关闭Visual Studio
  • 打开路径C:\Users\<你的系统用户名>\Documents\IISExpress\config,删除该目录下所有.config后缀的配置文件
  • 打开C盘下当前项目的根目录,开启隐藏文件显示,删除根目录下的.vs文件夹(该文件夹存储VS针对当前项目的本地配置)
  • 重新打开Visual Studio,启动项目测试

2. 校验站点物理路径绑定

缓存清理后如果仍有问题,手动确认IIS Express的站点绑定是否正确:

  • 启动项目后右键点击系统托盘的IIS Express图标,选中当前项目对应的站点,点击「查看所有站点」
  • 在弹出的窗口中核对站点的物理路径,确认是否指向当前C盘的项目根路径(wwwroot的上级目录)
  • 如果物理路径仍然指向旧的D盘路径,重复上一步的缓存清理操作即可自动重新生成正确绑定

3. 检查C盘项目目录权限

C盘的系统权限规则默认比其他盘严格,权限不足会导致IIS Express无法读取路由配置、静态资源,触发404:

  • 右键点击C盘下的项目根目录,选择「属性」-「安全」
  • 确认当前登录的Windows用户、IIS_IUSRS用户组对该目录拥有读取和执行、列出文件夹内容的权限
  • 缺少权限的话,添加对应用户/用户组并赋予对应权限,重启项目测试

4. 检查托管配置有效性

路径变更可能导致部分本地配置的相对路径读取失败,按以下步骤排查:

  • 打开项目根目录下的web.config文件,确认aspNetCore节点没有写死旧D盘的路径参数
  • 启动项目后在Visual Studio的输出窗口,选择「IIS Express」日志分类,查看是否有模块加载失败、配置读取失败的报错
  • 存在ANCM(ASP.NET Core Module)相关报错的话,重新安装对应版本的ASP.NET Core托管捆绑包即可解决

5. 校验路由注册状态

如果以上步骤都无效,确认路由是否成功注册到应用中:

  • 检查Program.cs(.NET 6+)或Startup.cs的路由配置代码,确认是否存在依赖相对路径读取全局路由前缀的逻辑,路径变更后读取失败导致前缀配置丢失
  • 临时新增一个无任何路由前缀的测试接口,直接访问测试是否能正常返回,排除全局路由失效的问题
  • 开启ASP.NET Core的路由日志,查看请求到达时的路由匹配过程,定位匹配失败的具体原因

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 05:36:03