Detect search engine crawler then render snapshot. It prevent Ajax content not indexed issue.
-
Add Seo.Prerender dll reference
-
Add SeoHttpModule in Web Config
<system.webServer> <modules> <remove name="SeoModule" /> <add name="SeoModule" type="Seo.Prerender.SeoHttpModule" /> </modules> </system.webServer>
-
Add
<meta name="fragment" content="!">
in every pages -
Add Prerender.config in project root
<?xml version="1.0" encoding="UTF-8"?> <PreRenderSetting xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <CrawlerUserAgents>188bot,188crawler</CrawlerUserAgents> <DomainSettings> <DomainSetting Domain="default" AccessPath="C:\Agilebet\share\snapshot" ByPassPaths="/"/> <DomainSetting Domain="uk.ngstar.sb.com" AccessPath="C:\Agilebet\share\uksnapshot" ByPassPaths="/"/> </DomainSettings> <MailNotifySetting Enable="false" MailServer="smtp.xuenn.com" Port="25" Recipients="andy.chen@xuenn.com,kid.liu@xuenn.com,joseph.tsai@xuenn.com" Sender="srv.cshhelp@xuenn.com" /> </PreRenderSetting>
- Add
?_escaped_fragment_
after request url or modify your useragent to search-engine crawler by chrome-extension - Check
developer tool - Network - doc
to see if HTML document in response is already rendered with AJAX content or not