asp.net 错误404:当渲染脚本文件夹的jquery-1.4.1.min.js时

7vux5j2d  于 2023-05-19  发布在  .NET
关注(0)|答案(1)|浏览(86)
  • 网站:https://abc.xyz.com/emrsso
  • IIS安装程序:站点> SHC > EMRSSO
  • 虚拟路径:/EMRSSO
  • 默认文档:SSOLogin.aspx
  • 物理路径:D:\Renesan\SHCTest\EMRSSO

在EMRSSO下还有Scripts文件夹,例如D:\Renesan\SHCTest\EMRSSO\Scripts。
然后在Scripts文件夹下有jquery-3.4.1.min.js,例如D:\Renesan\SHCTest\EMRSSO\Scripts\jquery-3.4.1.min.js
当我访问https://abc.xyz.com/emrsso,它是404错误或jquery-3.4.1.min.js,在调试我发现在chrome dev工具路径显示为'https://abc.xyz.com/Scripts/jquery-3.4.1.min.js'而不是'https://abc.xyz.com/emrsso/Scripts/jquery-3.4.1.min.js'
当我访问https://abc.xyz.com/emrsso/SSOLogin.aspx时,jquery-3.4.1.min.js渲染成功,在chrome dev工具路径中调试时显示为'https://abc.xyz.com/emrsso/Scripts/jquery-3.4.1.min.js',这很好。
当我通过Visual Studio调试我的应用程序时,jquery-3.4.1.min.js成功渲染并且工作正常。
jquery-3.4.1.min.js的ASPX代码:

<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="SSOLogin.aspx.vb" Inherits="EHR_Web.SSOLogin" %>

<script src="https://global.oktacdn.com/okta-signin-widget/5.2.0/js/okta-sign-in.min.js" type="text/javascript"></script>
<link href="https://global.oktacdn.com/okta-signin-widget/5.2.0/css/okta-sign-in.min.css" type="text/css" rel="stylesheet" />
<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>

我还问过其他问题:Why IIS doesn't handle relative path the same way IIS Express does?
但我没有找到任何解决方案。这里能有什么问题吗

icnyk63a

icnyk63a1#

尝试解析您的URL,这将使路径保持一致,无论页面/控件位于哪个文件夹中。

<script src="<%=ResolveUrl("~/Scripts/jquery-1.4.1.min.js")%>" type="text/javascript"></script>

https://learn.microsoft.com/en-us/dotnet/api/system.web.ui.control.resolveurl?view=netframework-4.8.1

相关问题