【发布时间】:2019-04-13 11:31:55
【问题描述】:
我知道这是一个愚蠢的问题,但我在谷歌上找不到答案。
我想明确使用<link href="https://example.com/xyz" rel="canonical" />,但不知何故,浏览器总是显示<link href="//example.com/xyz" rel="canonical" /> 而没有https 协议。 为了规范,我必须使用带有https协议的路径。,
其他内容,如
<meta property="og:url" content="https://example.com/xyz">
仍然显示正确的路径。
不确定 IIS 是否对此有所保留。有人有什么想法吗?
【问题讨论】:
-
我不确定你为什么认为是浏览器这样做。创建代码的不是浏览器,它只是解析从服务器获取的代码。而是显示服务器端部分的外观,因为我确信这就是问题所在。
-
使用像 Fiddler 这样的工具来捕获网络上的数据包。这应该告诉谁提供文本。
-
我无法重现此内容。您能否提供更多有关您如何编写
link标签的背景信息?这是在 Razor 视图中吗?您是否以某种方式动态创建 URL?您能否检查该动态创建是否生成正确的绝对 URL? -
@LGSon 我不明白你为什么解释说 OP 认为浏览器会这样做。由于这也被标记为 ASP.NET Core,我高度假设 OP 完全意识到这将是由服务器引起的……
-
@poke 我像 OP 所写的那样解释它,在下面的评论中,“我只是不能强制浏览器停止省略 https,...”。
标签: iis asp.net-core