Google 的网站管理员工具已开始显示我网站的一些非常奇怪的内部链接。它看起来“正常”,但我不知道该怎么做。如果您使用括号并输入一个字母,然后将任何内容放入括号中,则链接有效。我搜索了任何其他 MVC 站点,以便查看它们是否有相同的行为。微软的网站也出现在列表的顶部,并且有一个奇怪的链接。搜索词是“asp.net mvc site”,我得到的第一个链接是:
http://www.asp.net/(S(d35rmemuuono1wvm1gsp2n45))/mvc
我一点也不喜欢这个。您可以将 S 更改为 A 或任何其他字母,然后在下一部分中添加所需的任何文本。有人知道如何阻止它吗?在我的一生中,我看不出我的路线有什么问题。我使用了 MVC,所以我不会在搜索引擎中出现奇怪的 url,所以这非常令人失望。
我从Google“内部链接”列表中可以猜测到的最接近的是它可能是一个cookie。但是,当我在我的网站上查看源代码时,我找不到任何情况,除了正确的相对链接之外,我看不到任何内容。
最佳答案
这看起来像是打开 cookieless session 时使用的 session ID 格式(Web.config 中的 <sessionState cookieless="true" />
)。这似乎是一般的 ASP.NET 行为,而不仅仅是 MVC,因为我能够使用 VS 2010 中的标准 3.5 网站项目重现此行为。
即使您没有打开无 cookie session ,ASP.NET 也会像处理 session ID 一样处理该形式的值。
在不查看实际站点配置和日志的情况下很难诊断情况,但如果我不得不猜测,我会说 Google 网站管理员工具不会在请求中将 session cookie 返回到您的站点,因此该站点正在回退到无 cookie 方法以尝试维持 session 。
关于asp.net - 奇怪的 ASP.NET MVC 链接 (A(anythingworkshere)),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3134933/