In Episerver 4.x there were a white paper describing how to move the file area to a another server so that all webservers in a load balanced enviroment could access the same file area. I have not found such white paper for cms 5.x and since the file structure has changed I found myself a little bit lost.
My application pool and site is running under an account which is a part of iis_wpg group and exists an all servers with the same username and password. If I delete the folders in my network vpp folder episerver can recreate the pagefiles folder so it seems to have some access but then gives the error message below. The account has modify rights to all folders in vppfolder. In 4.x I also changed a few lines in machine.config (impersonate), but in machine.config for .net 2.0 it seems that the structure of mahine.config has changed so I have not managed to the same there.
Is there a white paper for this or does anyone have any ideas on how to get this to work in CMS 5? Thanks.
Server Error in '/' Application.--------------------------------------------------------------------------------
VirtualPathNativeProvider must have modify rights to '\\myserver\vppfolder\PageFiles'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: EPiServer.Core.EPiServerException: VirtualPathNativeProvider must have modify rights to '\\myserver\vppfolder\PageFiles'
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.
[EPiServerException: VirtualPathNativeProvider must have modify rights to '\\myserver\vppfolder\PageFiles'] EPiServer.Web.Hosting.VirtualPathUnifiedProvider.GetAndValidatePhysicalPathBase(String physicalPath) +330 EPiServer.Web.Hosting.Versioning.VersioningFileSystem.Init(NameValueCollection config) +107 EPiServer.Web.Hosting.VirtualPathVersioningProvider..ctor(String name, NameValueCollection configParameters) +198
[TargetInvocationException: Exception has been thrown by the target of an invocation.] System.RuntimeMethodHandle._InvokeConstructor(Object args, SignatureStruct& signature, IntPtr declaringType) +0 System.RuntimeMethodHandle.InvokeConstructor(Object args, SignatureStruct signature, RuntimeTypeHandle declaringType) +13 System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object parameters, CultureInfo culture) +366 System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object args, CultureInfo culture, Object activationAttributes) +1036 System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object args, CultureInfo culture, Object activationAttributes) +114 EPiServer.Web.Hosting.VirtualPathHandler.CreateVirtualPathProviderInstance(ProviderSettings providerSettings) +290 EPiServer.Web.Hosting.VirtualPathHandler.InitializeProviders(ProviderSettingsCollection providers) +178 EPiServer.Global.InitializeVirtualPathProviders() +117 EPiServer.Global.StaticInitialization() +62 EPiServer.Global.Global_BeginRequest(Object sender, EventArgs e) +119 System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +92 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +64
Hi Thomas, thanks for your answer
The account is created separetly for this and is a member of "users" and "iiswpg" on both servers with the same username and password. Today a episerver 4.x installation is using the same account on the same servers successfully. I have even tried to give "everyone" full access to the folders without success. Since episerver can recreate the pagefile folder if I delete it I guess it have some access to the folders, but then it fails. Is there anything I have missed?
We tried really hard to get this to work but failed. The only way to solve it was to use a domain user, not a local account.