关于在微信分享博客链接后的 nsukey 参数

背景

有时分享自己的博客链接在微信中,发现被微信拦截,需要用户二次点击才能打开。以自己的博客为例,打开后发现页面只显示了 Nice try. 而并不是实际要进入的页面(URL路由出错)。分析了一下被微信拦截后所生成的URL,如下所示:

www.yourdomain.com?nsukey=eA04u7Jmet6VkBxjWm6YSazfdSg9DEFocoKicTns6iuZrtxy9ujylnpbMx%2BdGrJAbNbbZtcl4nMbZVDm4O3CWg%3D%3D

搜索了一下 Nice try. Textpattern ,得到如下信息:

The simple steps you need to take to fix the ‘Nice Try.’ error message on your Textpattern/TXP installation are:

*Login to your control panel
*Go to Admin
*Go to Preferences
*Go to Advanced
*Change the Maximum URL length (in characters) to a higher value til it works!

I think it was put in there to stop people trying to hack URL’s but as the modern world of Mail campaigns seems to add a whole host of GET variables it’s pretty easy to overrun this limit.

Good Luck!

via: www.alunr.com/textpattern-txp-nice-try-error-message/

按照提示,进入后台设置 Maximum URL length 为2000(默认为200)后问题得到解决,微信生成带有 nsukey 可以正常打开页面。

原因分析

我这人比较喜欢研究,为什么微信要带上在原有的URL上增加 nsukey 参数,背后是什么企图(因为我知道 Tencent 是没有底线的)。

继续搜索 微信 nsukey 发现的如下结果,我个人认为比较有参考价值,分析的相对到位:

这部分带有 nsukey 的请求究竟是真实用户的请求被微信(运营商?)缓存/中转还是被抓取或者其他的?究竟什么条件会触发朋友圈分享链接时自动加上 nsukey 这个参数? via: www.v2ex.com/t/312163

综上,我严重怀疑用户方位页面是为被定位且快照抓取,所以我决定还是将 Textpattern 的URL长度改回为 200. 原因很简单,我不希望Wechat 快照我的内容,所以还是让它快照 Nice try. 吧… (2018.08.31)

— The end.

评论已关闭。Comments are turned off for this article.