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

如何配置IIS让斜杠开头的内部链接指向站点根而非服务器根

IIS 10配置:让正斜杠开头的资源链接指向站点根目录

核心问题说明

在IIS上部署多站点时,页面中/css/styles.css这类正斜杠开头的资源链接,默认会指向IIS服务器根目录(通常为C:\inetpub\wwwroot),而非当前站点的根目录。以下分两种场景给出解决方法:


场景1:站点为独立站点(绑定独立端口/主机头)

这类站点拥有独立访问入口,只需确保基础配置正确:

  • 设置唯一站点绑定:打开IIS管理器,进入目标站点的「绑定」设置,添加独立端口(如站点1用8080,站点2用8081)或主机头(如site1.local、site2.local,需配合本地hosts文件配置)。
  • 验证物理路径:进入站点「基本设置」,确认物理路径指向当前站点的根文件夹(而非服务器默认的wwwroot)。
  • 关联独立应用池:确保每个站点绑定独立应用池,应用池的「.NET CLR版本」与站点技术栈匹配(静态站点选「无托管代码」)。

完成后,通过对应端口/域名访问站点时,/css/styles.css会自动指向当前站点根目录下的css文件夹。


场景2:站点为虚拟目录(同域名下的子路径,如http://localhost/site1)

若站点以虚拟目录形式存在,正斜杠开头的链接会默认跳转至服务器根,需通过URL重写规则修正:

  1. 安装URL重写模块:从微软官方渠道安装IIS URL重写模块(IIS管理器中出现「URL重写」图标即安装成功)。

  2. 创建重写规则:

    • 进入虚拟目录的「URL重写」设置,点击「添加规则」→选择「空白规则」。
    • 规则名称:自定义(如「Rewrite Virtual Resource Path」)。
    • 匹配URL:
      • 请求路径:^(css|js|images)/(.*)$(按需添加需要重写的资源文件夹)。
      • 使用:正则表达式,勾选「忽略大小写」。
    • 条件:
      • 添加条件:输入{HTTP_HOST},匹配模式填你的域名(如^localhost$)。
      • 添加条件:输入{REQUEST_URI},匹配模式^/(css|js|images)/。
    • 操作:
      • 操作类型:重写。
      • 重写URL:/site1/{R:1}/{R:2}(将site1替换为你的虚拟目录名称)。
      • 勾选「追加查询字符串」与「停止处理后续规则」。
  3. 测试规则:保存后刷新页面,通过浏览器开发者工具的「网络」面板查看资源请求路径,确认/css/styles.css已重写为/site1/css/styles.css。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 11:50:30