.NET IIS发布项目后设置虚拟路径访问文件 404

解决方案:

找到Startup.cs中适当配置静态文件中间件:

确保调用了UseStaticFiles中间件

cs 复制代码
public void Configure(IApplicationBuilder app)
{
    app.UseStaticFiles(); // 确保这行在UseRouting之前

    app.UseRouting();

    app.UseAuthorization();

    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllers(); // 你的自定义路由
    });
}

再检查Web.config配置文件里有

cs 复制代码
<location path="." inheritInChildApplications="false"></location>

假设有一个网站,其根目录下有多个子应用程序,你可能想为根网站设置一些特定的HTTP头部,而不希望这些设置应用到子应用程序。你可以在web.config文件中这样配置:

cs 复制代码
<configuration>
  <location path="." inheritInChildApplications="false">
    <system.webServer>
      <httpProtocol>
        <customHeaders>
          <add name="X-Frame-Options" value="SAMEORIGIN" />
          <add name="X-Content-Type-Options" value="nosniff" />
        </customHeaders>
      </httpProtocol>
    </system.webServer>
  </location>
</configuration>

这样静态文件请求(如图片、CSS、JavaScript文件)就不会被路由系统拦截。

<location path="." inheritInChildApplications="false">是一个强大的配置工具,用于在IIS中对根应用或网站进行精细控制,而不干扰子应用的配置。

相关推荐
潘正翔9 小时前
docker核心概念
linux·运维·服务器·docker·容器·centos·运维开发
renhongxia110 小时前
世界模型,是“空中楼阁”还是AGI的“最后一块拼图”?
运维·服务器·数据库·人工智能·算法·agi
rockey62711 小时前
基于AScript的JavaScript脚本语言发布啦
javascript·c#·.net·js·script
Dovis(誓平步青云)11 小时前
远程办公软件文件传输实测:6 款工具的速度、稳定性和办公体验对比
linux·运维·服务器·后端·生成对抗网络
专注_每天进步一点点11 小时前
SLB(绑定弹性公网ip)-gateway-业务pod,gateway上出现reset by peer,业务pod上没有reset by peer
服务器·tcp/ip·gateway
ACP广源盛1392462567313 小时前
GSV6155@ACP# 搭配 AI 服务器、AI PC 完整适配方案
大数据·服务器·人工智能·分布式·单片机·嵌入式硬件
Java面试题总结14 小时前
LeetCode 93.复原IP地址
算法·leetcode·职场和发展·.net
IT方大同15 小时前
linux简介
linux·运维·服务器
慧都小妮子15 小时前
SciChart WPF v9.0 更新详解:矢量场图表、堆叠箱线图与 MVVM 轴同步来了
c#·.net·wpf·数据可视化·图表控件·图表
Dear~yxy15 小时前
时间同步服务器搭建
运维·服务器