November Happy Hour will be moved to Thursday December 5th.

EPiServer 4.61, Windows Vista and IIS 7.0

Vote:
 
Hi All, I have recently upgraded to Windows Vista (hence IIS 7.0) on my development machine, and was having some issues with my EPiServer 4.61 installations. I managed to solve these issues (the issues I have found so far anyway!) and thought I would share the resolutions here so anyone else can follow these steps, should they be required. Please note that this is NOT an official posting of any kind - as far as I am aware, EPiServer do NOT support developing with EPiServer on a Windows Vista machine, so upgrade/follow these steps at your own risk! 1. Set the correct permissions on the EPiServer site. It is quite likely that the first issue you will run into is related to file permissions. If you receive the following error: The requested page cannot be accessed because the related configuration data for the page is invalid. Then you will need to grant access to the local "Network Service" account to the EPiServer root directory. NOTE: Due to Vista's UAC the permissions will NOT inherit automatically to the Web.Config (or indeed License.config) file as would be expected - You may need to set the permissions on the *.Config files after setting the permissions on the root, along with granting modify access to the Web.Config. 2. IIS 7.0 and Application Pools The next issue I encountered was to do with Application Pool Modes. IIS 7.0 runs its Application Pools in a different manner (Managed Pipeline Mode can be "Classic" (old) or the new "Integrated") from previous versions, and hence running a default EPiServer site with the new (Integrated Managed Pipeline) Application Pool type will cause the following error: Description: This application is running in an application pool that uses the Integrated .NET mode. This is the preferred mode for running ASP.NET applications on the current and future version of IIS. The exception message prompts you to either change the AppPool to classic mode, or to Upgrade the App to work with the new Integrated Mode AppPools. I upgraded the EPiServer to use the new AppPool by issuing the following command (given to you in the exception message body) from an administrative command prompt: %systemroot%\system32\inetsrv\APPCMD.EXE migrate config "EPiServer460Test/" This sounds intrusive, but all it is really doing is moving the in Web.Config from inside to the new element. Perform this command, and refresh the page. With a bit of luck your EPiServer will now be accessible. 3. Edit/Admin Modes All looked good - until I opened the EPiServer editor. The style sheets had not been applied. Thinking this was the standard problem of not having "/util/NotFound.aspx" set as the 404 handler redirect url, I went to IIS 7.0 and entered the mentioned NotFound.aspx url as the Custom error page for a 404 error. However, this did not work... After an amount of digging around I found that the migration of the in the previous step had missed one important piece. The addition of the attribute: runAllManagedModulesForAllRequests="true" to the element under the new element allows these modules to actually execute! Something that I though the migration tool would do for you, but obviously not... And at this point, I believe that I have a working EPiServer installation on Windows Vista, although i'm sure there are many other little issues that will arise! Cheers, Rich
#12984
Mar 29, 2007 11:43
Vote:
 
This is another recommendation about this issue from one of our partners @ Ottoboni Group Kalle Ljung. I have done these steps myself and have no trouble today between Vista and EPiServer. :) 1. Install .NET Framework 1.1 2. In the Control Panel, Programs & Features, install: - IIS 6 Management Compatibility - IIS 6 Management ConsoleIIS 6 Metabase and - IIS 6 configuration compatibility 3. Make sure the site runs .NET 2.0 after the install of .NET 1.1 4. Install EPiServer Manager 5. Shut down User Account Control (UAC), otherwise you get Access denied when you list the websites. 6. Install EPiServer with .NET 2.0 templates according to the instruction on www.episerver.com 7. Point 404 side to /Util/NotFound.aspx and change "Error Responses" to "Custom errorpages" under "Edit Feature Settings...", these settings are not found under "Error Pages" for the EPiServer website. 8. Make sure that the site uses "Classic .NET AppPool", if this does not exist, create a new application pool wiht settings: .NET Framework version: 2.0, Manged pipline mode: Classic When I tried EPiServer i Manged pipline mode: Integrated så började w3wp.exe process started loading the CPU 100%. It seems that IIS does not handle URL with + chars, this means that the tree in Edit shows wrong pictures that refers to: Util/images/ExplorerTree/T+.gif A problem is that they have changed the handling of error pages in IIS7 ad to get "FriendlyURL" to work you need to turn on the errorhandling even if you run it locally. This means that you DON´T se the error message generated from .NET but a ”nicer” page. So the solution is not to use FriendlyURL when you develop. Case:75325 I actually solved the issue with the + in url. I had to do some system changes by inserting In C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config just before according to http://support.microsoft.com/kb/927672 I also solved another issue with system stylesheet for edit and admin. When this is browsed the browser does not the .css. It tries to load a /Util/styles/system.css. This does not exist so I created a copy of system_template.css and it worked like a charme. MVH Eric Pettersson
#15206
Mar 30, 2007 8:50
Vote:
 
I would suggest against disabling UAC, especially since it does not seem to interfere with EPiServer operations at any time later. Instead open your Episerver Manager folder (probably C:\Program Files\EPiServer Manager) and in the file property of EPiServerManager.exe set it's privilege level to run as administrator.
#15207
Apr 03, 2007 8: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.