F
F
Fr3nzy2011-05-14 14:46:48
JavaScript
Fr3nzy, 2011-05-14 14:46:48

Question for SEO. Full Ajax, graceful degradation + "#links"?

In general, the essence of the question is this:

  • There is a project that works entirely on Ajax, but works without problems even with JS turned off
  • The URL in the browser status bar (in the presence of JS) is different in HTML5 and HTML4 browsers (in the former, History Push State is used, in the latter, the page anchor is changed)
  • For indexing by search engines - everything is OK. But if a person comes in, say, from IE9, then for him the URL in the browser status bar on the about page in HTML4 browsers will look like "/#page/about" (while in HTML5 - "/page/about" ).
  • Links within the site itself are ordinary and do not change at all when an AJAX request is made to the server


How bad is it that copying a link in older browsers will result in a link with a hash? Those. the person came in, copied the link, pasted it somewhere on, say, Twitter. After all, in fact, for search engines, these are completely different links :)

Answer the question

In order to leave comments, you need to log in

4 answer(s)
4
4elentano, 2011-05-15
@Fr3nzy

The scheme works as follows:
1. The site supports the AJAX crawling scheme.
2. The server issues an HTML snapshot for each AJAX URL that is visible to the user (through the browser). The AJAX URL contains a hash fragment, such as www.example.com/index.html#mystate , where #mystate is the hash fragment. An HTML snapshot is all the content that is displayed on the page after the JavaScript code is executed.
3. Search engines index the HTML snapshot and serve the original AJAX URLs in their search results.
www.google.com/support/webmasters/bin/answer.py?hl=en&answer=174992

X
xanep, 2011-05-14
@xanep

For a search engine, a link with a 301 redirect means the same as a direct one. You need to make crawlers redirect with code 301 to "/page/about" when they go to "/#page/about" (or vice versa). And everything will be fine.

D
denver, 2011-05-15
@denver

> And when you follow this link, the server automatically redirects from "/#page/about" -> "/page/about"
I may be wrong, but the server will know about everything after #, REQUEST_URI will only contain what is before it.

A
andoriyu, 2011-05-15
@andoriyu

Google knows - code.google.com/web/ajaxcrawling/

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question