Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sitecore web.config and file structure for a production READ ONLY environment

I am planning an enterprise deployment of SiteCore...

Users can edit the content only on the backend servers.... and I was planning to DEPLOY in production only the required files & configuration required to run my site properly... (the Vanilla SiteCore site stripped out of the SiteCore folders...)

so I guess that I need 100% SiteCoreAssemblies and Config... more specifically I was wondering how to remove from the config all the unused stuffs required for the web edit and content approval roles....

let me know if there is any guidance / best practice... or any advise to improve the security and deploy the minimum configuration to run, would be appreciated... Thanks Stelio

like image 950
Stelio Avatar asked Sep 06 '12 14:09

Stelio


1 Answers

The only reason I'm digging this up is because I'm doing this in the near future:

Take a look that the "Configuring Production Environments" document that @Christian Hagelid pointed out.

More specifically: 1.2.2 Step 2. Clean the solution (optional)

  1. Remove unnecessary files Delete the following files:
    • /Indexes folder - If you are not using indexes in your implementation.
    • Everything from the /sitecore folder except: -/service -shell/sitecore.version.xml -/login/default.css -/images
    • /App_Config/Commands.config
    • /App_Config/ConnectionStringsSQLite.config
    • /App_Config/Prefetch/Core.config
    • /App_Config/Prefetch/Master.config
    • /App_Config/Icons.config
    • /App_Config/LanguageDefinitions.config
    • /App_Config/Portraits.config
    • /WebSite/web.config.sqlite *
    • /WebSite/webedit.css
  2. Remove or comment the following sections from the web.config file:
    • events
    • workflowHistoryStores
    • processors
    • dataviews
    • pageextenders
    • controlSources
    • replacers
    • fastCache for "shell" site.
    • watcher
    • commands
    • languageDefinitions
    • icons
    • portraits
    • publishing
    • watchers-media and watchers-config
    • ConfigWatcher from httpModules and system.webServer/modules
    • Filesystem database definition from databases
  3. Remove or comment the following scheduled agents in the Web.config:
    • CleanupPublishQueue
    • CleanupAgent’s timing intervals should be adjusted if necessary
    • HtmlCacheClearAgent if not used

I challenge you to be brave and experiment with settings. Go through the web.config file line by line and make sure you understand them. I do this periodically to remind myself of features Sitecore has that I'm not taking advantage of. Try to remove some settings that you don't think you need and when they work and you're happy with them, share your findings.

Take FULL advantage of caching - Sitecore has wonderful options for caching and if properly configured your site will be fast, on the other hand if you don't properly configure caching your site could be really slow and or have weird issues with dynamic content being cached incorrectly.

Good luck!

like image 131
VFein Avatar answered Nov 20 '22 00:11

VFein