【问题标题】:URL rewrite for Google analytics为 Google 分析重写 URL
【发布时间】:2017-07-27 14:30:16
【问题描述】:

我已经搜索了很多 S.O.问题和答案,但还没有看到一个好的解决方案。我已经在我的 web.config 文件中创建并完善了 SEO URL。我使用 rewriteMap 基本上将我的产品页面转换为我需要的任何 URL。

我必须这样做:

<rule name="Redirect Rule" enabled="true" stopProcessing="true">
    <match url=".*" />
    <conditions>
        <add input="{RedirectMapName:{REQUEST_URI}}" pattern="(.+)" />
    </conditions>
    <action type="Redirect" url="{C:1}" appendQueryString="false" redirectType="Permanent" />
</rule>
<rule name="Rewrite Rule" stopProcessing="true">
    <match url=".*" />
    <conditions>
        <add input="{RewriteMapName:{REQUEST_URI}}" pattern="(.+)" />
    </conditions>
    <action type="Rewrite" url="{C:1}" />
</rule>

现在要求的是添加 Google Analytics(分析)参数以跟踪广告系列。如果我只是简单地添加参数,它当然会给我一个 404 错误。我现在正试图让这些 SEO URL 获取这些参数,但非常沮丧。

如果我删除查询字符串,Google Analytics 将不会提取它,因为它是客户端脚本。像这样的东西可能很接近,但我没有指向任何特定的页面。 URL Rewrite with Query String

这就是我删除查询字符串的方式:

<rule name="Subject redirect with query" stopProcessing="true">
         <match url="^(.*)" />
         <conditions trackAllCaptures="true">
            <add input="{QUERY_STRING}" pattern="^utm_source=([^=&amp;]+)&amp;utm_medium=([^=&amp;]+)&amp;utm_campaign=([^=&amp;]+)&amp;?(.*)$" />
         </conditions>
         <action type="Redirect" url="{R:1}" appendQueryString="false" redirectType="Permanent" />
</rule>

总结一下,这个怎么转:

https://www.example.com/fancy-url

到这里

https://www.example.com/fancy-url?utm_source=Targeted_Email&utm_medium=email&utm_campaign=campaigntag

【问题讨论】:

  • 你能以相反的顺序为我提供这个解决方案吗?我的服务器阻止了具有 utm_mediam 和 utm_source 参数的 url

标签: asp.net google-analytics url-rewriting web-config


【解决方案1】:

在经历了很多挫折之后,我能够弄清楚这一点。查询字符串没问题,但其中一项设置是阻止处理其余规则。在规则名称之后,我将停止处理设置为 true。当我在 IIS 中查看它时,该设置更具描述性。它说“停止处理后续规则”。一旦我删除它并将它移到我的其他规则之上,就可以完美地工作。

<rule name="Google Query string">
      <match url="(.*)$" />
      <conditions>
        <add input="{QUERY_STRING}" pattern="utm_source=([^=&amp;]+)&amp;utm_medium=([^=&amp;]+)&amp;utm_campaign=([^=&amp;]+)&amp;?(.*)$" />
      </conditions>
      <action type="Rewrite" url="{R:0}" appendQueryString="false" />
    </rule>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-06
    • 1970-01-01
    • 2012-12-20
    • 2014-10-12
    • 2013-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多