带有 IIS 重写模块的规范 URL 和 PDF

问题描述 投票:0回答:1

我尝试仅使用 IIS 重写模块向 PDF 添加规范 url。由于某种原因我无法让它工作。以下是我目前拥有的。

Link: <http://www.example.com/downloads/whitepaper.pdf>; rel="canonical"

XML

<outboundRules rewriteBeforeCache="true">
<rule name="Canonical For PDF" preCondition="IsPDF">
                    <match serverVariable="RESPONSE_Link" pattern=".*" negate="false" />
                    <conditions>
                    </conditions>
                    <action type="Rewrite" value="&lt;{HTTP_HOST}{REQUEST_URI}>; rel=&quot;canonical&quot;" />
                </rule>
                <preConditions>
                    <preCondition name="IsPDF">
                        <add input="{REQUEST_FILENAME}" pattern="\.pdf.*" />
                    </preCondition>
                </preConditions>
      </outboundRules>
url-rewriting http-headers url-rewrite-module canonical-link outbound
1个回答
0
投票

我无法让它工作,所以我通过

Global.asax
Application_BeginRequest

来完成此操作
  if (Request.FilePath.EndsWith(".pdf"))
  {
      Response.AddHeader("Link", $"<{Request.Url.AbsoluteUri.Split('?')[0]}>; rel=\"canonical\"");
  }
© www.soinside.com 2019 - 2024. All rights reserved.