Thursday, March 22, 2012

Optimizing ASP.NET Application for Search Engines

A year back I was asked to develop a real estate website for a friend of mine. While developing it I was mainly focused on the technical aspects of the development. Eventually the application lacked 2 things:

1.)It was difficult to optimise for Search engines

2.) It was sometimes slow to respond to user action due to excessive use of server controls and dynamically generated web pages.

While the second point was not mission critical the first one resulted in few visitors. I was asked to do something about. Eventually I decided to rebuild presentation layer from scratch as it was impossible to optimise it for Search Engines.

This time I was wiser and used less web server controls, less server side processing and of course I optimised code and content for search engines.

There is however a question that deserves attention. That is the viewstate input field. I have pages that list the properties in the datagrid and the viewstate field grows really large - inflating the page size. As it comes immediately after header section on the page it will be read by the crawler before any content comes into view.

Now I wonder how it is going to affect the way these pages are crawled. I wonder if anyone could give me any advice about this issue.

Maybe the administrators could consider opening a forum about optimising ASP.NET applications for Search Engines. I believe there is a number of people interested in this topic.As far as I'm aware the pages will still get crawled, however, for search engines that look at where the target content is, within the page (i.e. the higher the content the higher its rank), the ViewState may have an impact.

If this is a major issue, I would suggest developing a HtmlControl version of the DataGrid - it isn't too difficult.
I don't really know what robot is doing about viewstate field. I would make an assumption that viewstate field is totally irrelevant for search engine and therefore should be ignored. If I run robot simulator against my pages, it looks like it is ignored.

Search engine companies are very secretive about the techniques they employ, so I can't be sure if there is any relevance. Having in mind there are so may variables involved in ranking I might never know it for sure. Also any changes made will need time to reflect in SE ranking.

Developing new server control might be an idea, however it would delay deployment of the application and I would leave it out for now.

I think that these topics would deserve forum on it's own. After all many applications are made to provide services to the public, generate revenue or simply to convey the message.
Without SE ranking, the effort made becomes almost meaningless.
Here is the way to reduce viewstate generated by datagrid:

http://authors.aspalliance.com/JimRoss/Articles/DatagridDiet.aspx

0 comments:

Post a Comment