升级Windows Server 2019后网站CSS的link href引用失效求助
问题分析与解决办法
场景还原
通过XSLT将XML转换为HTML时,采用以下代码引入同站点CSS:
<head> <link href="$siteURL/css/pdf.css" rel="stylesheet" type="text/css"></link> </head>
该配置在Windows Server 2012 R2上可正常加载CSS,但升级到Windows Server 2019后失效,改用绝对路径后样式恢复正常。
可能原因
- Windows Server 2019对路径解析的安全管控更严格,动态变量
$siteURL拼接的相对路径无法被服务器正确解析为站点根目录对应的实际文件路径。 - IIS或相关Web服务在2019版本中调整了虚拟路径处理逻辑,动态生成的路径映射规则发生变化,导致无法定位到CSS文件。
解决方案
- 直接使用绝对路径
替换为包含完整协议、域名的绝对路径,确保服务器能精准定位CSS文件:<head> <link href="https://your-site-domain.com/css/pdf.css" rel="stylesheet" type="text/css"></link> </head> - 修正
$siteURL变量解析
确保XSLT中的$siteURL变量被正确赋值为完整的站点根URL(如https://your-site-domain.com/),而非相对路径片段,避免路径解析歧义。
内容的提问来源于stack exchange,提问作者pt1xoom
相关产品推荐
相关产品推荐

