Monday, May 11, 2009

Search Engine Optimization (SEO) and ASP.NET Developers

Search Engine Optimization (SEO) and ASP.NET Developers
In this article we're going to cover some basic concepts on what you can do in order to make your ASP.NET application as spider and search engine friendly as possible.


If you're developing for the Web then you should familiarize yourself with some Search Engine Optimization or SEO concepts. The idea here is to make your ASP.NET application as friendly as possible for spiders, and the specific spider we're talking about is Google.

In this article we're going to cover some basic concepts on what you can do in order to make your ASP.NET application as spider and search engine friendly as possible.

Postbacks

Your biggest gain in the search engine world is going to avoid the use of postbacks. For example, say you have content within an ASP panel. But in order to display that content you use a button and capture a click event in the code behind, then you change the property of the panel to visible=true once the button is clicked. This will not work with spiders since they don't "click buttons" so to speak. The way to write the page so the spider will work with it is to use a link, and then pass a parameter via a URL, this could be a link back to the page if you want, but then in the Page_Load event check for the parameters values to determine what panel or content to display in your page.

I can't understate the importance of eliminating postbacks when it comes to the Internet. Links are much better when dealing with spiders, avoid the postback, spiders simple can't do them.

Friendly URLs

Another thing to look into is the use of a URL rewriter in order to create spider friendly URLs. There are many examples on the Web for creating a URL rewriter. What a URL rewriter does is translate the parameters over to a directory like structure. For example, mypager.aspx?param1=1¶m2=2 becomes something like: /mypage/1/2/default.aspx. This will enhance the spiders efficiency in spidering your site and potentially increase the frequency of a spider doing a deep crawl through your site. You can read evidence of this fact via the Google FAQ:

"Your pages are dynamically generated. We're able to index dynamically generated pages. However, because our web crawler could overwhelm and crash sites that serve dynamic content, we limit the number of dynamic pages we index. In addition, our crawlers may suspect that a URL with many dynamic parameters might be the same page as another URL with different parameters. For that reason, we recommend using fewer parameters if possible. Typically, URLs with 1-2 parameters are more easily crawlable than those with many parameters. Also, you can help us find your dynamic URLs by submitting them to Google Sitemaps. "

There are plenty of resources on the Web for URL rewriting:

http://www.codeproject.com/aspnet/URLRewriter.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/urlrewriting.asp
http://www.15seconds.com/Issue/030522.htm

Titles and Meta Tags
Another issue when generating dynamic pages, and using the same page but either posting back or linking back via a URL. Be sure to change the Title of the page and Meta description. If you do not do this then Google is going to "think" that it is the same page, and the results will not be displayed as high as you would like. It will definitely affect your search results. One way of tacking this is to convert both the title, and meta description tags to HTML controls and then change the inner text, or dynamically generate the text for the tags when displaying different content.

Here's a sample block of code for dynamically changing the title tag of your Web page:

First modify the page in order to make the title tag a control you can modify:

<br />Then in your code you first declare the control as an HTMLGenericControl and set the properties: <br /> <br />Protected WithEvents PageTitle As System.Web.UI.HtmlControls.HtmlGenericControl <br /> <br />PageTitle.InnerText = MyValue <br /> <br />As mentioned the meta description tag is also important. For example, say you do a search on keyword contained within the title tag of your document, but not in the body of the document. Google will display the meta description of your site in the results. So if every page within your application has the same meta description value, all the pages are going to look the same, and may not appear to be relevant to the person doing the search. <br /> <br />You can remedy this using the method above or simply populating the value and outputting it to the form: <br /> <br /><META NAME="DESCRIPTION" CONTENT="<%= MetaDescription %>"> <br /> <br />Then in the code behind just set the value of MetaDescription <br /> <br />Public MetaDescription As String <br /> <br />MetaDescription = "My meta value...." <br /> <br /><strong><strong>Viewstate</strong></strong> <br />Viewstate can be another thing that adversely affects the indexing of your site. For example, if you view the source of an ASP.NET application you may see something like the following: <br /> <br /><input type="hidden" name="__VIEWSTATE" value="dDwtMjA3MTUw...=" /> <br /> <br />And the value of this field can continue on for a long time. I've seen cases where the viewstate is over 100k or more. The problem this has with search engines is many times a search engine will rank your page based on where a keyword occurs in the document. For example, say you're searching on ASP.NET and you first have 100k of viewstate and then your keyword appears within the HTML document. This could affect how your page ranks for that keyword since many search algorithms base relavancy on where the keyword appears or how close to the top of the document it appears. <br /> <br />One way, and one I recommend is to remove the viewstate entirely from the source of the HTML page. Not only will this benefit your search engine results, but it will also reduce the download time of the page since your reduce the size of the page. <br /> <br />The following article is shows you how to remove the viewstate, it focuses on DotNetNuke, but you can use the same functions within any ASP.NET application. <br />http://www.wwwcoder.com/main/parentid/224/site/3507/68/default.aspx <br /> <br /><strong>Closing</strong> <br /> <br />There are many issues that cover SEO for Websites, but in this article we're covering what you as an ASP.NET developer can address. For more information check out the many sites on SEO by searching on the topic. Good luck in your Web site promotional efforts! <br /> <br /><strong>Author Info</strong> <br /> <br />Written by Patrick Santry, ASP.NET MVP, MCSE, recognized speaker, and author of several books and magazine articles, and owner of WWWCoder.com. Patrick has over 11 years of Web application development and management. You can visit his blog at http://blogs.wwwcoder.com/psantry/. <br /> <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/03667911252458341664' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/03667911252458341664' rel='author' title='author profile'> <span itemprop='name'>Masood H.Virk</span> </a> </span> </span> <span class='post-timestamp'> at <meta content='http://mavrasolutions.blogspot.com/2009/05/search-engine-optimization-seo-and-asp.html' itemprop='url'/> <a class='timestamp-link' href='http://mavrasolutions.blogspot.com/2009/05/search-engine-optimization-seo-and-asp.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2009-05-11T09:20:00+03:00'>9:20 AM</abbr></a> </span> <span class='post-comment-link'> </span> <span class='post-icons'> <span class='item-action'> <a href='https://www.blogger.com/email-post.g?blogID=62615523823450575&postID=6476520501965306811' title='Email Post'> <img alt='' class='icon-action' height='13' src='https://resources.blogblog.com/img/icon18_email.gif' width='18'/> </a> </span> <span class='item-control blog-admin pid-773996126'> <a href='https://www.blogger.com/post-edit.g?blogID=62615523823450575&postID=6476520501965306811&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> <div class='comments' id='comments'> <a name='comments'></a> <h4>No comments:</h4> <div id='Blog1_comments-block-wrapper'> <dl class='avatar-comment-indent' id='comments-block'> </dl> </div> <p class='comment-footer'> <div class='comment-form'> <a name='comment-form'></a> <h4 id='comment-post-message'>Post a Comment</h4> <p> </p> <a href='https://www.blogger.com/comment/frame/62615523823450575?po=6476520501965306811&hl=en' id='comment-editor-src'></a> <iframe allowtransparency='true' class='blogger-iframe-colorize blogger-comment-from-post' frameborder='0' height='410px' id='comment-editor' name='comment-editor' src='' width='100%'></iframe> <script src='https://www.blogger.com/static/v1/jsbin/4269703388-comment_from_post_iframe.js' type='text/javascript'></script> <script type='text/javascript'> BLOG_CMT_createIframe('https://www.blogger.com/rpc_relay.html'); </script> </div> </p> </div> </div> </div></div> </div> <div class='blog-pager' id='blog-pager'> <span id='blog-pager-newer-link'> <a class='blog-pager-newer-link' href='http://mavrasolutions.blogspot.com/2009/05/how-can-i-make-my-blog-load-faster.html' id='Blog1_blog-pager-newer-link' title='Newer Post'>Newer Post</a> </span> <span id='blog-pager-older-link'> <a class='blog-pager-older-link' href='http://mavrasolutions.blogspot.com/2009/05/top-10-professions-in-pakistan-and.html' id='Blog1_blog-pager-older-link' title='Older Post'>Older Post</a> </span> <a class='home-link' href='http://mavrasolutions.blogspot.com/'>Home</a> </div> <div class='clear'></div> <div class='post-feeds'> <div class='feed-links'> Subscribe to: <a class='feed-link' href='http://mavrasolutions.blogspot.com/feeds/6476520501965306811/comments/default' target='_blank' type='application/atom+xml'>Post Comments (Atom)</a> </div> </div> </div><div class='widget HTML' data-version='1' id='HTML1'> <h2 class='title'>Google Ads by Mavra</h2> <div class='widget-content'> <script type="text/javascript"><!-- google_ad_client = "pub-9490004189399799"; google_ad_host = "pub-1556223355139109"; /* 728x90, created 4/21/09 */ google_ad_slot = "3190675278"; google_ad_width = 728; google_ad_height = 90; //--> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script> </div> <div class='clear'></div> </div><div class='widget Profile' data-version='1' id='Profile1'> <h2>About Me</h2> <div class='widget-content'> <a href='https://www.blogger.com/profile/03667911252458341664'><img alt='My photo' class='profile-img' height='80' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7uIQVODJAOJij77CaWqPRvffbS0IMMLaZgDYeLIcfKGVkQTKhQi_C9Npw2HLg2MErBYAltSSMc-VsZdW5HfGDyXN3EbACPVhvetwWYvUWgcmOHSFFf_DJgpc8rwj5dg/s220/LOGOMavratr.jpg' width='65'/></a> <dl class='profile-datablock'> <dt class='profile-data'> <a class='profile-name-link g-profile' href='https://www.blogger.com/profile/03667911252458341664' rel='author' style='background-image: url(//www.blogger.com/img/logo-16.png);'> Masood H.Virk </a> </dt> <dd class='profile-data'>Jeddah, Makkah, Saudi Arabia</dd> <dd class='profile-textblock'>for more details www.inhousetoday.com</dd> </dl> <a class='profile-link' href='https://www.blogger.com/profile/03667911252458341664' rel='author'>View my complete profile</a> <div class='clear'></div> </div> </div></div> </div> </div> <div class='column-left-outer'> <div class='column-left-inner'> <aside> </aside> </div> </div> <div class='column-right-outer'> <div class='column-right-inner'> <aside> <div class='sidebar section' id='sidebar-right-1'><div class='widget BlogArchive' data-version='1' id='BlogArchive1'> <h2>Blog Archive</h2> <div class='widget-content'> <div id='ArchiveList'> <div id='BlogArchive1_ArchiveList'> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2014/'> 2014 </a> <span class='post-count' dir='ltr'>(4)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2014/05/'> May </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2014/04/'> April </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2014/01/'> January </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2013/'> 2013 </a> <span class='post-count' dir='ltr'>(10)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2013/07/'> July </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2013/06/'> June </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2013/05/'> May </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2013/03/'> March </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2013/01/'> January </a> <span class='post-count' dir='ltr'>(4)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2012/'> 2012 </a> <span class='post-count' dir='ltr'>(13)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2012/11/'> November </a> <span class='post-count' dir='ltr'>(5)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2012/06/'> June </a> <span class='post-count' dir='ltr'>(8)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2011/'> 2011 </a> <span class='post-count' dir='ltr'>(2)</span> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2011/06/'> June </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2011/04/'> April </a> <span class='post-count' dir='ltr'>(1)</span> </li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate expanded'> <a class='toggle' href='javascript:void(0)'> <span class='zippy toggle-open'> ▼  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2009/'> 2009 </a> <span class='post-count' dir='ltr'>(22)</span> <ul class='hierarchy'> <li class='archivedate expanded'> <a class='toggle' href='javascript:void(0)'> <span class='zippy toggle-open'> ▼  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2009/05/'> May </a> <span class='post-count' dir='ltr'>(7)</span> <ul class='posts'> <li><a href='http://mavrasolutions.blogspot.com/2009/05/complete-url-rewriting-solution-for.html'>A Complete URL Rewriting Solution for ASP.NET 2.0</a></li> <li><a href='http://mavrasolutions.blogspot.com/2009/05/10-tips-to-go-from-beginner-to.html'>10 tips to go from a beginner to intermediate deve...</a></li> <li><a href='http://mavrasolutions.blogspot.com/2009/05/what-if-i-like-my-desktop-messy.html'>What if I like my Desktop Messy?</a></li> <li><a href='http://mavrasolutions.blogspot.com/2009/05/how-can-i-make-my-blog-load-faster.html'>How can I make my blog load faster?</a></li> <li><a href='http://mavrasolutions.blogspot.com/2009/05/search-engine-optimization-seo-and-asp.html'>Search Engine Optimization (SEO) and ASP.NET Devel...</a></li> <li><a href='http://mavrasolutions.blogspot.com/2009/05/top-10-professions-in-pakistan-and.html'>Top 10 Professions in Pakistan and salary packages</a></li> <li><a href='http://mavrasolutions.blogspot.com/2009/05/can-be-very-usefull-in-programming-data.html'>Can be very usefull in programming DATA related ro...</a></li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2009/04/'> April </a> <span class='post-count' dir='ltr'>(13)</span> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://mavrasolutions.blogspot.com/2009/03/'> March </a> <span class='post-count' dir='ltr'>(2)</span> </li> </ul> </li> </ul> </div> </div> <div class='clear'></div> </div> </div><div class='widget AdSense' data-version='1' id='AdSense1'> <div class='widget-content'> <script type="text/javascript"><!-- google_ad_client="pub-9490004189399799"; google_ad_host="pub-1556223355139109"; google_ad_width=200; google_ad_height=200; google_ad_format="200x200_as"; google_ad_type="text_image"; google_ad_host_channel="0001+S0006+L0001"; google_color_border="B8A80D"; google_color_bg="F6F6F6"; google_color_link="B8A80D"; google_color_url="999999"; google_color_text="000000"; //--></script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> <div class='clear'></div> </div> </div><div class='widget Followers' data-version='1' id='Followers1'> <h2 class='title'>Followers</h2> <div class='widget-content'> <div id='Followers1-wrapper'> <div style='margin-right:2px;'> <div><script type="text/javascript" src="https://apis.google.com/js/platform.js"></script> <div id="followers-iframe-container"></div> <script type="text/javascript"> window.followersIframe = null; function followersIframeOpen(url) { gapi.load("gapi.iframes", function() { if (gapi.iframes && gapi.iframes.getContext) { window.followersIframe = gapi.iframes.getContext().openChild({ url: url, where: document.getElementById("followers-iframe-container"), messageHandlersFilter: gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER, messageHandlers: { '_ready': function(obj) { window.followersIframe.getIframeEl().height = obj.height; }, 'reset': function() { window.followersIframe.close(); followersIframeOpen("https://www.blogger.com/followers.g?blogID\x3d62615523823450575\x26colors\x3dCgt0cmFuc3BhcmVudBILdHJhbnNwYXJlbnQaByM0NDQ0NDQiByMzNzc4Y2QqByNlZWVlZWUyByM0NDQ0NDQ6ByM0NDQ0NDRCByMzNzc4Y2RKByM2NjY2NjZSByMzNzc4Y2RaC3RyYW5zcGFyZW50\x26pageSize\x3d21\x26origin\x3dhttp://mavrasolutions.blogspot.com/"); }, 'open': function(url) { window.followersIframe.close(); followersIframeOpen(url); }, 'blogger-ping': function() { } } }); } }); } followersIframeOpen("https://www.blogger.com/followers.g?blogID\x3d62615523823450575\x26colors\x3dCgt0cmFuc3BhcmVudBILdHJhbnNwYXJlbnQaByM0NDQ0NDQiByMzNzc4Y2QqByNlZWVlZWUyByM0NDQ0NDQ6ByM0NDQ0NDRCByMzNzc4Y2RKByM2NjY2NjZSByMzNzc4Y2RaC3RyYW5zcGFyZW50\x26pageSize\x3d21\x26origin\x3dhttp://mavrasolutions.blogspot.com/"); </script></div> </div> </div> <div class='clear'></div> </div> </div></div> </aside> </div> </div> </div> <div style='clear: both'></div> <!-- columns --> </div> <!-- main --> </div> </div> <div class='main-cap-bottom cap-bottom'> <div class='cap-left'></div> <div class='cap-right'></div> </div> </div> <footer> <div class='footer-outer'> <div class='footer-cap-top cap-top'> <div class='cap-left'></div> <div class='cap-right'></div> </div> <div class='fauxborder-left footer-fauxborder-left'> <div class='fauxborder-right footer-fauxborder-right'></div> <div class='region-inner footer-inner'> <div class='foot no-items section' id='footer-1'></div> <table border='0' cellpadding='0' cellspacing='0' class='section-columns columns-2'> <tbody> <tr> <td class='first columns-cell'> <div class='foot no-items section' id='footer-2-1'></div> </td> <td class='columns-cell'> <div class='foot no-items section' id='footer-2-2'></div> </td> </tr> </tbody> </table> <!-- outside of the include in order to lock Attribution widget --> <div class='foot section' id='footer-3' name='Footer'><div class='widget Attribution' data-version='1' id='Attribution1'> <div class='widget-content' style='text-align: center;'> Awesome Inc. theme. Powered by <a href='https://www.blogger.com' target='_blank'>Blogger</a>. </div> <div class='clear'></div> </div></div> </div> </div> <div class='footer-cap-bottom cap-bottom'> <div class='cap-left'></div> <div class='cap-right'></div> </div> </div> </footer> <!-- content --> </div> </div> <div class='content-cap-bottom cap-bottom'> <div class='cap-left'></div> <div class='cap-right'></div> </div> </div> </div> <script type='text/javascript'> window.setTimeout(function() { document.body.className = document.body.className.replace('loading', ''); }, 10); </script> <script type="text/javascript" src="https://www.blogger.com/static/v1/widgets/523887051-widgets.js"></script> <script type='text/javascript'> window['__wavt'] = 'AOuZoY7ofx5mfEqE2mzfoYQlLX5wePiQdw:1715946723025';_WidgetManager._Init('//www.blogger.com/rearrange?blogID\x3d62615523823450575','//mavrasolutions.blogspot.com/2009/05/search-engine-optimization-seo-and-asp.html','62615523823450575'); _WidgetManager._SetDataContext([{'name': 'blog', 'data': {'blogId': '62615523823450575', 'title': 'MAVRA - Digital Technology', 'url': 'http://mavrasolutions.blogspot.com/2009/05/search-engine-optimization-seo-and-asp.html', 'canonicalUrl': 'http://mavrasolutions.blogspot.com/2009/05/search-engine-optimization-seo-and-asp.html', 'homepageUrl': 'http://mavrasolutions.blogspot.com/', 'searchUrl': 'http://mavrasolutions.blogspot.com/search', 'canonicalHomepageUrl': 'http://mavrasolutions.blogspot.com/', 'blogspotFaviconUrl': 'http://mavrasolutions.blogspot.com/favicon.ico', 'bloggerUrl': 'https://www.blogger.com', 'hasCustomDomain': false, 'httpsEnabled': true, 'enabledCommentProfileImages': true, 'gPlusViewType': 'FILTERED_POSTMOD', 'adultContent': false, 'analyticsAccountNumber': '', 'encoding': 'UTF-8', 'locale': 'en', 'localeUnderscoreDelimited': 'en', 'languageDirection': 'ltr', 'isPrivate': false, 'isMobile': false, 'isMobileRequest': false, 'mobileClass': '', 'isPrivateBlog': false, 'isDynamicViewsAvailable': true, 'feedLinks': '\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22MAVRA - Digital Technology - Atom\x22 href\x3d\x22http://mavrasolutions.blogspot.com/feeds/posts/default\x22 /\x3e\n\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/rss+xml\x22 title\x3d\x22MAVRA - Digital Technology - RSS\x22 href\x3d\x22http://mavrasolutions.blogspot.com/feeds/posts/default?alt\x3drss\x22 /\x3e\n\x3clink rel\x3d\x22service.post\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22MAVRA - Digital Technology - Atom\x22 href\x3d\x22https://www.blogger.com/feeds/62615523823450575/posts/default\x22 /\x3e\n\n\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22MAVRA - Digital Technology - Atom\x22 href\x3d\x22http://mavrasolutions.blogspot.com/feeds/6476520501965306811/comments/default\x22 /\x3e\n', 'meTag': '', 'adsenseClientId': 'ca-pub-9490004189399799', 'adsenseHostId': 'ca-host-pub-1556223355139109', 'adsenseHasAds': true, 'adsenseAutoAds': false, 'boqCommentIframeForm': true, 'loginRedirectParam': '', 'view': '', 'dynamicViewsCommentsSrc': '//www.blogblog.com/dynamicviews/4224c15c4e7c9321/js/comments.js', 'dynamicViewsScriptSrc': '//www.blogblog.com/dynamicviews/8a8c39e8754b0ef7', 'plusOneApiSrc': 'https://apis.google.com/js/platform.js', 'disableGComments': true, 'interstitialAccepted': false, 'sharing': {'platforms': [{'name': 'Get link', 'key': 'link', 'shareMessage': 'Get link', 'target': ''}, {'name': 'Facebook', 'key': 'facebook', 'shareMessage': 'Share to Facebook', 'target': 'facebook'}, {'name': 'BlogThis!', 'key': 'blogThis', 'shareMessage': 'BlogThis!', 'target': 'blog'}, {'name': 'Twitter', 'key': 'twitter', 'shareMessage': 'Share to Twitter', 'target': 'twitter'}, {'name': 'Pinterest', 'key': 'pinterest', 'shareMessage': 'Share to Pinterest', 'target': 'pinterest'}, {'name': 'Email', 'key': 'email', 'shareMessage': 'Email', 'target': 'email'}], 'disableGooglePlus': true, 'googlePlusShareButtonWidth': 0, 'googlePlusBootstrap': '\x3cscript type\x3d\x22text/javascript\x22\x3ewindow.___gcfg \x3d {\x27lang\x27: \x27en\x27};\x3c/script\x3e'}, 'hasCustomJumpLinkMessage': false, 'jumpLinkMessage': 'Read more', 'pageType': 'item', 'postId': '6476520501965306811', 'pageName': 'Search Engine Optimization (SEO) and ASP.NET Developers', 'pageTitle': 'MAVRA - Digital Technology: Search Engine Optimization (SEO) and ASP.NET Developers'}}, {'name': 'features', 'data': {}}, {'name': 'messages', 'data': {'edit': 'Edit', 'linkCopiedToClipboard': 'Link copied to clipboard!', 'ok': 'Ok', 'postLink': 'Post Link'}}, {'name': 'template', 'data': {'name': 'Awesome Inc.', 'localizedName': 'Awesome Inc.', 'isResponsive': false, 'isAlternateRendering': false, 'isCustom': false, 'variant': 'light', 'variantId': 'light'}}, {'name': 'view', 'data': {'classic': {'name': 'classic', 'url': '?view\x3dclassic'}, 'flipcard': {'name': 'flipcard', 'url': '?view\x3dflipcard'}, 'magazine': {'name': 'magazine', 'url': '?view\x3dmagazine'}, 'mosaic': {'name': 'mosaic', 'url': '?view\x3dmosaic'}, 'sidebar': {'name': 'sidebar', 'url': '?view\x3dsidebar'}, 'snapshot': {'name': 'snapshot', 'url': '?view\x3dsnapshot'}, 'timeslide': {'name': 'timeslide', 'url': '?view\x3dtimeslide'}, 'isMobile': false, 'title': 'Search Engine Optimization (SEO) and ASP.NET Developers', 'description': 'Search Engine Optimization (SEO) and ASP.NET Developers \r In this article we\x27re going to cover some basic concepts on what you can do in ord...', 'url': 'http://mavrasolutions.blogspot.com/2009/05/search-engine-optimization-seo-and-asp.html', 'type': 'item', 'isSingleItem': true, 'isMultipleItems': false, 'isError': false, 'isPage': false, 'isPost': true, 'isHomepage': false, 'isArchive': false, 'isLabelSearch': false, 'postId': 6476520501965306811}}]); _WidgetManager._RegisterWidget('_NavbarView', new _WidgetInfo('Navbar1', 'navbar', document.getElementById('Navbar1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HeaderView', new _WidgetInfo('Header1', 'header', document.getElementById('Header1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogView', new _WidgetInfo('Blog1', 'main', document.getElementById('Blog1'), {'cmtInteractionsEnabled': false, 'lightboxEnabled': true, 'lightboxModuleUrl': 'https://www.blogger.com/static/v1/jsbin/1781096480-lbx.js', 'lightboxCssUrl': 'https://www.blogger.com/static/v1/v-css/13464135-lightbox_bundle.css'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML1', 'main', document.getElementById('HTML1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_ProfileView', new _WidgetInfo('Profile1', 'main', document.getElementById('Profile1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogArchiveView', new _WidgetInfo('BlogArchive1', 'sidebar-right-1', document.getElementById('BlogArchive1'), {'languageDirection': 'ltr', 'loadingMessage': 'Loading\x26hellip;'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_AdSenseView', new _WidgetInfo('AdSense1', 'sidebar-right-1', document.getElementById('AdSense1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_FollowersView', new _WidgetInfo('Followers1', 'sidebar-right-1', document.getElementById('Followers1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_AttributionView', new _WidgetInfo('Attribution1', 'footer-3', document.getElementById('Attribution1'), {}, 'displayModeFull')); </script> </body> </html>