Ajax 生成内容、爬行和黑名单

发布于 2024-10-17 14:46:28 字数 538 浏览 5 评论 0原文

我的网站使用ajax。

我有一个用户列表页面,其中列出了 ajax 表中的用户(带有分页和更多信息内容...)。

该页面的网址是: /user-list

用户列表由ajax创建。当用户点击一个用户时,他会被重定向到一个页面,该页面的url为: /member/memberName

因此我们可以在这里看到ajax用于生成内容而不是管理导航(使用#字符)。

我想检测机器人来索引所有页面。

因此,在 ajax 中,我想显示一个带有分页和很酷的 ajax 效果的 ajax 表(更多信息...),当我检测到机器人时,我想显示所有用户(不分页),并带有指向会员页面的链接,如下所示:

<a href="/member/john">John</a><a href="/member/bob">Bob</a>...

您认为使用这种技术可以将我列入黑名单吗?如果您这么认为,您能否通过保留这些干净的网址而不重新开发用户列表(不使用ajax)来提供替代解决方案?

My website uses ajax.

I've got a user list page which list users in an ajax table (with paging and more information stuff...).

The url of this page is :
/user-list

User list is created by ajax. When the user click on one user, he is redirected to a page which url is : /member/memberName

So we can see here that ajax is used to generate content and not to manage navigation (with the # character).

I want to detect bot to index all pages.

So, in ajax I want to display an ajax table with paging and cool ajax effetcs (more info...) and when I detect a bot I want to display all users (without paging) with a link to the member page like this :

<a href="/member/john">John</a><a href="/member/bob">Bob</a>...

Do you think I can be black listed with this technique ? If you think so, could you please provide an alternative solution by keeping these clean urls and without redeveloping the user-list (without ajax) ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

烟雨凡馨 2024-10-24 14:46:28

Google 支持使 AJAX 可抓取的规范:

http://code.google.com/ web/ajaxcrawling/docs/specation.html

我做了一个实验,它有效:

http://seo-website-designer.com/SEO-Ajax-Google-Solution

由于这是 Google 规范,因此您不会受到处罚(除非您滥用它)。

话虽如此,目前只有谷歌支持它(AFAIK)。

另外,我相信遵循渐进增强的概念是更好的方法。也就是说,创建一个可用的 html 网站,然后使用 JavaScript 对其进行增强

Google support a specification to make AJAX crawlable:

http://code.google.com/web/ajaxcrawling/docs/specification.html

I did an experiment and it works:

http://seo-website-designer.com/SEO-Ajax-Google-Solution

As this is a Google specification, you won't get penalised (unless you abuse it).

Saying that, only Google support it at the moment (AFAIK).

Also, I believe following the concept of Progressive Enhancement is a better approach. That is, create a working html website then make the JavaScript enhance it

无声静候 2024-10-24 14:46:28

也许使用带有 onclick 的 url 来触发 AJAX 脚本?就像

<a href="/some/url" onclick="YourFancyFunction();return false;">Some URL</a>

我不认为 Google 会因此惩罚你一样,你主要使用 JScript,但你确实为他们的机器人提供了后备,因此你的网站的可访问性不会受到任何影响。

编辑
好吧,我误会了。那么我的猜测是你基本上有两个选择:
1. 编写网站中机器人最终出现的不同部分,或者,
2. 重写当前站点,例如始终提供“完整”页面,并可选择仅获取内容 div。然后你只能用 JavaScript 获取内容,但机器人总是会得到一个不错的页面。

Maybe use the <a href=""></a> urls with an onclick to trigger your AJAX scripting? Like

<a href="/some/url" onclick="YourFancyFunction();return false;">Some URL</a>

I don't think Google would punish you for this, you primarily use JScript, but you do provide a fall back for their bot, so your site doesn't get any less accessible.

EDIT
Ok, I misunderstood. Then my guess would be you basically have two options:
1. Write a different part of your site where bots end up, or,
2. Rewrite your current site to for example always give a 'full' page, with an option to only get, say, the content div. Then you can get only the content with JavaScript, but bots will always get a nice page.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文