静态 Azure 托管中的子文件夹

2023-12-09

我想使用 Azure blob 文件存储来托管静态网站。

如果 html 页面位于 $web-storage 的根文件夹中,则效果很好。

但是,如果我将网页放入子文件夹中,相对链接(例如 css 文件)将不再起作用 - 因为它们被解释为基于根的链接

<link href="css/bootstrap.css" rel="stylesheet">

index.html 位于“subfolder1”中

但不是

https://blablabla.web.core.windows.net/subfolder1/css

决定

https://blablabla.web.core.windows.net/css

这是 Azure 的错误还是我的 html 中的误解/错误?


实际上,$web是Azure通用存储V2上的一个特殊容器,其根路径如下www对于 Apache HTTP 服务器或wwwroot让 IIS 托管所有静态文件夹和文件。所有文件夹及其子文件夹必须在以下位置创建$web容器。您可以在Azure门户上看到其信息,如下图所示。

enter image description here

这是我创建两个文件夹的示例a & b和他们的index.html under $webAzure 存储资源管理器中的容器。

enter image description here

如果访问我的主要终点https://<account name>.z7.web.core.windows.net,我的静态网站的索引网页是一个 Angular 示例网页,如下所示,

enter image description here

然后,访问子文件夹a and b如您所愿,这些子文件夹的索引页如下。

文件夹的index.htmla

<html>
<body>
<h2>A</h2>
</body>
</html>

enter image description here

enter image description here

希望它有助于理解Azure通用存储V2上的静态网站的结构。


更新您的评论:

我更新我的a/index.html文件并添加一个新文件a/a.css,代码如下。

a/index.html

<html>
<head>
<link rel="stylesheet" type="text/css" href="a.css">
</head>
<body>
<h2>A</h2>
<span id='test'>Hello</span>
</body>
</html>

a/a.css

#test {
    color: red;
}

有些行为取决于浏览器的实现。

问: 有什么区别http://host/a and http://host/a/? 答:要在 Chrome 中访问它们,这两个 url 将响应相同的内容a/index.html。但是,它们的基本路径不同:/ for http://host/a , but /a/ for http://host/a/,这将导致加载相对路径资源的不同行为a.css,如下图所示。

Fig 1.

enter image description here

Fig 2.

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

静态 Azure 托管中的子文件夹 的相关文章

  • 在 IE8 中无法正确从 JSONP 文件读取特殊字符

    同样的问题上一个问题 https stackoverflow com questions 4742771 special characters are not being read from a jsonp file correctly我专
  • 在 springfox-swagger-ui 中渲染 html

    我最近更新了运行 springfox swagger2 和 springfox swagger ui 2 5 0 的应用程序以使用版本 2 6 0 应用程序的API文档使用 li b and br 标签 在 2 5 0 中可以正确呈现 但在
  • 如何使用 webRTC 禁用系统音频增强?

    在不同的系统 Windows Android 等 上有一些 内置 音频增强功能 例如 AEC 自动回声消除 NR 降噪 和自动增益控制 每个人都可以以任意组合关闭或打开这些功能 某些浏览器上还有音频增强功能 我知道 Chrome 和 Fir
  • 如果选中/取消选中复选框,则启用/禁用提交按钮?

    如何在 HTML 表单中启用提交按钮并在未选中复选框时禁用该按钮 这段代码有什么问题 EnableSubmit function val var sbmt document getElementById Accept if val chec
  • 如何在不使用 Flexbox 的情况下水平对齐元素?

    有没有一种方法可以在不使用的情况下将 Web 组件彼此相邻对齐Flexbox 我知道它是一个很棒的工具 但不幸的是它不适用于 IE 9 或 10 我希望链接内的文本显示在图像旁边 JSFiddle 显示了工作代码 但是使用 FlexBox
  • 获取外部脚本的源代码(代码)?

    是否可以获取外部脚本的内容作为字符串 相当于myInlineScript textContent 场景是我刚刚开始进入 WebGL 并且我发现所有教程都将着色器存储为内联
  • 使用自定义数据属性是否会产生浏览器兼容性问题?

    我必须在自定义数据标签或 id 之间进行选择 我想选择自定义数据标签 但我想确保它们不会导致当今最广泛使用的浏览器的浏览器兼容性问题 我正在使用 jQuery 1 6 我的特定场景涉及到我需要为多个操作引用 commentId 的情况 di
  • 在页面之间传递 javascript 变量[重复]

    这个问题在这里已经有答案了 可能的重复 跨页面保留 javascript 变量 https stackoverflow com questions 1981673 persist javascript variables across pa
  • 在画布中心写入 (0,0)-HTML5

    I m currently developing a drawing app which allows the user to click and drag to determine the size of the shape and al
  • 删除 HTML5 离线应用程序缓存

    我有一个带有关联的应用程序缓存清单的 HTML 文档 但现在我想暂时摆脱离线应用程序缓存 如果我从清单中删除对清单的提及标签 已经有缓存版本的浏览器将继续使用该缓存版本 如果我更新应用程序缓存清单 无论如何 仍然有一个应用程序缓存 删除离线
  • 如何替换 CSS 表达式

    我有一个用于时间表条目的旧 ASP Web 应用程序 其中充满了 CSS 表达式 它们出现在 CSS 文件中 ApptPage position relative height expression Math max document bo
  • 如何在 host.json 中定义每个函数的超时?

    我有很多函数 其中大多数函数我希望有 30 秒的超时时间 然而 有一个超时需要大约 2 30 分钟 有没有办法配置hosts json来反映这一点 这在单一功能应用程序中是不可能的 但是 您应该能够将 2 30 函数拆分为单独的函数应用程序
  • 设置三个输入数字的最大值

    我有三个输入数字
  • Visual Studio 中的 Azure 服务总线托管标识返回 401 - 令牌颁发者无效

    我正在尝试使用代码中的托管标识访问 Azure 服务总线 目前我只是在本地尝试这个 当我调试代码时出现以下错误 System UnauthorizedAccessException Put token failed status code
  • 持续运行的 C# 代码 - 服务还是单独的线程?

    我有一个 NET 4 Web 应用程序 它有 3 个关联的独立项目 DAL BAL 和 UI 我正在使用实体框架进行数据库交互 我有代码循环遍历一堆数据库数据 根据找到的内容调用方法 然后更新数据库 我希望这段代码一直运行 同时 我希望用户
  • 将带有 rowspan 和 colspan 的 XHTML 表转换为 LaTeX

    我一直在寻找将 HTML 表格转换为 LaTeX 的合适解决方案 我发现以下问题与我的要求相似 XML 表到 LaTeX https stackoverflow com questions 27021926 xml table to lat
  • 多个引导模式的滚动问题

    我有一个带有大量信息的模态页面 因此您需要滚动 该模式包含指向第二个模式的链接 When I 打开模态 1 单击链接打开模式 2 模式 1 保持在后台 然后关闭模式 2 以便我回到模式 1 modal 1 失去滚动 仍然有一个滚动条 但它不
  • Azure 函数中的 Autofac 依赖注入

    我正在尝试使用 Azure 函数中的 Autofac IOC 来实现 DI 我需要构建容器 但不确定将构建容器的代码放在哪里 我确实写了一篇博客文章 用于在 Azure Functions 中使用 Autofac 进行依赖项注入 看看这里
  • 在用户单击之前图像不会绘制在画布上?

    我使用执行类似以下操作的函数绘制几张图像 context drawImage img width 2 1 height 2 1 width height 我读过 我需要等待图像加载后才能绘制它 如下所示 img onload functio
  • 如何在流体宽度表中使用省略号而不使每列大小相同?

    假设我的表中的列是id name description and phone The description列的长度为 1 255 个字符 但 id 最多只有 3 个字符 我希望列的大小适当 而不是每列的大小相同 我想要descriptio

随机推荐

  • 批处理文件:在FOR循环中跳过以_开头的文件夹

    我想排除所有以 无需在排除文本文件中列出每个配置文件 是否有可能做到这一点 echo off set Target D backup for f tokens I in dir a d h b SystemDrive Users do if
  • 通过简单的适配器在imageview中显示位图图像

    我从网址获取图像 我在列表视图中使用图像视图 我想将位图图像列表添加到列表项的每一行中 我使用 SimpleAdapter 但图像视图显示空白 我的代码如下 ArrayList
  • 使用 c-driver 按索引更新 mongo 数组元素

    为了更新 mongo 数组的元素 我使用了如下语法 set a 0 1238 a 1 402 或者 更准确地说 我正在使用我认为与其等效的 C 驱动程序函数调用 这似乎工作正常 但是当我查看 MongoHub 中的对象时 我看到 a 0 1
  • Python - Pandas 用字符串删除行

    在我的数据集中 我有几行包含字符 我只需要包含所有整数的行 最好的方法是什么 以下数据集 例如 我想删除第 2 行和第 3 行 因为它们分别包含 051A 04A 和 08B 1 2017 0 321 3 20 42 18 2 051A 0
  • 如何编写 PostSharp Invoke 方面来简化跨线程控制更新

    当我想跨线程更新控件时 我通常会这样做 this Invoke MethodInvoker delegate SomeProcedure 建议的方法实际上是调用要更新的特定控件的调用程序 但 99 的情况下 表单 即我的示例中的 this
  • Python 中的 OpenCV:“ImportError:DLL 加载失败”

    关于这个主题已经有很多问题了 但我没有找到关于 DLL not found 传统问题的任何令人满意的答案 我使用的是通过 Anaconda 3 安装的 Python 3 5 我已经用 pip 安装了 官方 opencv python 3 2
  • 根据 WooCommerce 中的总额自动应用百分比或固定购物车折扣

    我正在尝试在客户的 WooCommerce 网站上设置优惠券 以便在购物车总数低于上限金额或固定金额等于或大于上限金额时应用百分比折扣 假设购物车总数的上限为 200 如果购物车总数低于此上限 则应用 10 的折扣 但如果购物车总数为 20
  • Maven 阴影插件是我的 jar 无法在服务器中工作的罪魁祸首吗

    我开发了一个java应用程序并将其制作为jar文件 我使用捆绑了所有依赖项mvn clean packagemaven shade 插件 我的问题是 尽管该应用程序在我的本地计算机上运行良好 但在服务器环境中却无法运行 每当我运行它时 我都
  • Flask 发布到同一页面

    I have from flask import Flask render template import datetime app Flask name app route def hello now datetime datetime
  • 首次购买者将商品添加到购物车

    我有一家 WooCommerce 商店 我正在尝试将特定产品添加到 Woocommerce 购物车中 仅供首次购买者使用 我已经有以下 php 代码 但由于某种原因 它不会起作用 这是我的代码 add action woocommerce
  • ScriptManager 必须出现在任何需要它的控件之前

    我创建了一个新的 ASP NET Web 应用程序 调试后出现服务器错误 ID 为 WaitingPopup1 的控件需要页面上的 ScriptManager ScriptManager 必须出现在任何需要它的控件之前 我是 ASP NET
  • 获取 .model.json 作为字符串

    我想知道是否有一种简单的方法可以通过 AEM 中的 sling 内容导出器的结果获取字符串 在我当前的用例中 我需要组件的 htl 文件中的组件 model json 输出的内容 并且发送额外的请求显然不是一个好主意 关于如何获取数据有任何
  • 读取大文本文件中的行数 VB6

    我有大小为 230MB 的文本文件 我想计算该文件的行数 我试过 Scripting FileSystemOblect 但它已经从记忆中消失了 请帮忙 Thanks 正常的 Windows 换行符是 CRLF 因此您可以对 LF 进行计数
  • Reactor 和 Webflux 中的 Mono 链超时算子到底测量了什么?

    我正在使用 Spring Webflux 并试图理解 Monos 链的超时概念 例如 有一系列 Mono 调用 myService firstOperation then myService secondOperation then myS
  • 目标 C:下载带进度条的文件 [重复]

    这个问题在这里已经有答案了 我正在尝试放置一个在下载过程中同步的进度条 我的应用程序现在可以使用此代码下载文件 pdfData NSData alloc initWithContentsOfURL NSURL URLWithString h
  • HLS 流无法在 Apple 设备上运行

    我有一个实时 RTSP 流 我已设法通过 VLC 将其转码为 HLS 现在它可以在 Android 和桌面浏览器上完美运行 通过 Flash 但在 Apple 上不行 我可以在我的虚拟机上的 iPad 和桌面 Safari 上进行测试 我可
  • 使用 XML 字段 Vs.为不稳定的组织创建一个表

    我正在设计一个为组织开具和存储发票的应用程序 问题是这个组织根本不稳定 发票的种类很多 并且可能会增加和变化 首先 我尝试在 DAL 中使用表 一张表用于存储发票 一张表用于发票字段 一张表用于发票字段值 问题是 这种方式需要反射来稍后检测
  • gethostbyaddr 在 Windows 上可以,但在 Linux 上返回 NULL

    这段代码在 Windows 上运行正常 但在 Linux 上 gethostbyaddr 返回 NULL 我尝试了很多改变 但没有成功 我的 etc host conf 有以下行 订购主机 绑定 我运行完整的代码并传递地址 11 234 4
  • C 中的多处理和管道

    我正在努力学习如何与fork 创建新流程并pipes与每个进程进行通信 假设我有一个包含 20 个单词的列表 并且创建了 3 个进程 现在 我需要使用管道在进程之间分发单词 每个进程都会对其接收到的单词列表进行排序 我想要实现这一目标的方式
  • 静态 Azure 托管中的子文件夹

    我想使用 Azure blob 文件存储来托管静态网站 如果 html 页面位于 web storage 的根文件夹中 则效果很好 但是 如果我将网页放入子文件夹中 相对链接 例如 css 文件 将不再起作用 因为它们被解释为基于根的链接