/// <summary>
        /// Generating the robots.txt file when robots.txt file is accessed from browser url
        /// </summary>
        /// <param name="args"></param>
        public override void Process(HttpRequestArgs args)
        {
            HttpContext context = HttpContext.Current;

            if (context == null)
            {
                return;
            }
            //Check this Processor authorized to execute for the site
            SiteContext currentSite = Context.Site;

            if (SiteSpecificHttpRequestProcessor.IsEnabledOnSite(currentSite))
            {
                string requestUrl = context.Request.Url.ToString();
                if (string.IsNullOrEmpty(requestUrl) || !requestUrl.ToLower().EndsWith("robots.txt"))
                {
                    return;
                }
                Item   SiteRoot         = Sitecore.Context.Database.GetItem(Sitecore.Context.Site.RootPath);
                string robotsTxtContent = SiteRoot.Fields[I_RobotsConstants.Robots_File_ContentFieldName].Value;
                context.Response.ContentType = "text/plain";
                context.Response.Write(robotsTxtContent);
                context.Response.End();
            }
        }
示例#2
0
        /// <summary>
        /// Overridden HttpRequestProcessor method
        /// </summary>
        /// <param name="args"></param>
        public override void Process(HttpRequestArgs args)
        {
            HttpContext context = HttpContext.Current;

            if (context == null)
            {
                return;
            }
            SiteContext currentSite = Context.Site;

            //Check this Processor authorized to execute for the site
            if (SiteSpecificHttpRequestProcessor.IsEnabledOnSite(currentSite))
            {
                Execute(args);
            }
        }