Try our conversational search powered by Generative AI!

File Manager and Load Balancing


Hi all,

We have FileManager working for 1 server - but we are moving to a load balancing solution. Does anybody know how to replicate content uploaded through file manager to 2 or more production servers?




Feb 05, 2010 18:52

Hi Keith,

From my experience setting up load balanced web sites, be it EPiServer or any oher solution, I have only one stable reliable solution I'd recommend.
Put the upload/pagefiles on a clustered fileshare.

There are software that can do replication, one can to some extent use an Active Directory.
But at the end of the day, I'd go for a clusted file share.


Feb 05, 2010 20:41

Thanks Morten!!

Gone for the fileshare option - just testing localling and setting the share in the web.config is causing me problems.

My config entry is:

<add key="EPsUploadDir" value="\\Osllmklp103\Share\upload\" />

But the get the following exception:

parsing "^/\\Osllmklp103\Share\upload\/\d+/$" - Insufficient hexadecimal digits. Parameter name: ^/\\Osllmklp103\Share\upload\/\d+/$

Server Error in '/' Application.

parsing "^/\\Osllmklp103\Share\upload\/\d+/$" - Insufficient hexadecimal digits. Parameter name: ^/\\Osllmklp103\Share\upload\/\d+/$

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentException: parsing "^/\\Osllmklp103\Share\upload\/\d+/$" - Insufficient hexadecimal digits. Parameter name: ^/\\Osllmklp103\Share\upload\/\d+/$

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[ArgumentException: parsing "^/\\Osllmklp103\Share\upload\/\d+/$" - Insufficient hexadecimal digits.
Parameter name: ^/\\Osllmklp103\Share\upload\/\d+/$]
   System.Text.RegularExpressions.RegexParser.ScanHex(Int32 c) +110
   System.Text.RegularExpressions.RegexParser.ScanCharEscape() +146
   System.Text.RegularExpressions.RegexParser.ScanBasicBackslash() +1090
   System.Text.RegularExpressions.RegexParser.ScanBackslash() +1797
   System.Text.RegularExpressions.RegexParser.ScanRegex() +1105
   System.Text.RegularExpressions.RegexParser.Parse(String re, RegexOptions op) +131
   System.Text.RegularExpressions.Regex..ctor(String pattern, RegexOptions options) +237
   EPiServer.FileSystem.UnifiedDirectory.PathIsPageDirectory(String dir) +82
   EPiServer.WebControls.FileManagerNavigator.CreateNavigatorRootDirs(HtmlTable table) +2630
   EPiServer.WebControls.FileManagerNavigator.CreateChildControls() +391
   EPiServer.WebControls.FileManagerNavigator.DataBind() +41
   System.Web.UI.Control.DataBind() +86
   System.Web.UI.Control.DataBind() +86
   System.Web.UI.Control.DataBind() +86
   System.Web.UI.Control.DataBind() +86
   EPiServer.Edit.ActionWindow.Page_Load(Object sender, EventArgs e) +133
   System.EventHandler.Invoke(Object sender, EventArgs e) +0
   System.Web.UI.Control.OnLoad(EventArgs e) +67
   System.Web.UI.Control.LoadRecursive() +35
   System.Web.UI.Page.ProcessRequestMain() +750







Feb 08, 2010 13:29

First option is go for Shared File location between the web severs.
A separate lincensed software called 'Vice versa' which will replicate the files between the web servers
Please make sure you are using sticky session(once the request comes to web1, all the subsequent request has to come to web1).

First options willwork ,since i have used the both the options.



Feb 23, 2010 6:38
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.