禁止用户在 WordPress 网站上用句点替换连字符
Disallow users from replacing hyphens with periods on WordPress sites
在查看 Google 分析和广告流量后,我们意识到人们能够以一种非常奇怪的方式在客户网站上找到页面。用句点替换连字符。
例如...
正确的永久link:www.domain.com/this-is-a-link
不正确:www.domain.com/this.is.a.link
两者都有效并将用户发送到同一页面。但我不确定为什么。我们尝试了各种浏览器,似乎在所有浏览器中的效果都一样。通常,这会对用户有所帮助(一般来说),但它会扭曲分析。
我怀疑广告活动人员创建了一个 link,其中包含引发问题的句点。但即使解决了这个问题,它也没有回答为什么这会起作用或如何禁止这种行为/功能的问题。
有什么想法吗?
Wordpress 使用 mod_rewrite 永久 link。 mod_rewrite 在您的 url 中使用模式匹配来区分您的 .htaccess 文件中要重写和不重写的内容。
.
字符实际上表示 正则表达式模式匹配中的任何字符 ,mod_rewrite 用来确定要重写的内容。
为了更好地说明这一点,请举个例子
www.domain.com/this-is-a-link
成为您想要的正确 link 但在
的情况下
www.domain.com/this.is.a.link
它也将匹配,因为 .
被读取为 -
,因为单点表示 任何字符
您可以阅读有关 mod_rewrite 的更多信息,以更好地理解为什么句号也被解读为破折号。
解决此问题的唯一方法是重写默认的 Wordpress 本机 mod_rewrite 模式或将其报告为错误以要求核心社区将其列为错误会更合适。但这似乎很常见,即使是像 eBay 这样的大型网站 url
http://www.ebay.com/rpp/halloween-events/sweet-treats
url和
http://www.ebay.com/rpp/halloween-events/sweet.treats
也是有效的。我认为这是 mod_rewrite 的一个限制,因此您可能希望接受它。
在查看 Google 分析和广告流量后,我们意识到人们能够以一种非常奇怪的方式在客户网站上找到页面。用句点替换连字符。
例如...
正确的永久link:www.domain.com/this-is-a-link 不正确:www.domain.com/this.is.a.link
两者都有效并将用户发送到同一页面。但我不确定为什么。我们尝试了各种浏览器,似乎在所有浏览器中的效果都一样。通常,这会对用户有所帮助(一般来说),但它会扭曲分析。
我怀疑广告活动人员创建了一个 link,其中包含引发问题的句点。但即使解决了这个问题,它也没有回答为什么这会起作用或如何禁止这种行为/功能的问题。
有什么想法吗?
Wordpress 使用 mod_rewrite 永久 link。 mod_rewrite 在您的 url 中使用模式匹配来区分您的 .htaccess 文件中要重写和不重写的内容。
.
字符实际上表示 正则表达式模式匹配中的任何字符 ,mod_rewrite 用来确定要重写的内容。
为了更好地说明这一点,请举个例子
www.domain.com/this-is-a-link
成为您想要的正确 link 但在
的情况下www.domain.com/this.is.a.link
它也将匹配,因为 .
被读取为 -
,因为单点表示 任何字符
您可以阅读有关 mod_rewrite 的更多信息,以更好地理解为什么句号也被解读为破折号。
解决此问题的唯一方法是重写默认的 Wordpress 本机 mod_rewrite 模式或将其报告为错误以要求核心社区将其列为错误会更合适。但这似乎很常见,即使是像 eBay 这样的大型网站 url
http://www.ebay.com/rpp/halloween-events/sweet-treats
url和
http://www.ebay.com/rpp/halloween-events/sweet.treats
也是有效的。我认为这是 mod_rewrite 的一个限制,因此您可能希望接受它。