Locating application files on the SharePoint server
Deployment of a SharePoint application affects files in several locations on the server.
File locations
The SharePoint hosting web application is located in the VirtualDirectories folder, e.g.:
C:\Inetpub\wwwroot\wss\VirtualDirectories\34318
Location |
Contents |
~\bin |
all application dlls: |
~\App_Themes |
Iron Speed Designer creates a subfolder for each theme name, e.g., MyAppInherited, containing the BaseStyles.css and Styles.css style sheet files. |
~\App_GlobalResources |
Resource files such as MyApp.resx, MyAppBaseClasses.resx, MyApp.en-US.resx, MyAppBaseClasses.en-US.resx, etc. |
SharePoint site content
The full application is copied into the Layouts folder, e.g.:
SharePoint 2010:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\MyApp3
SharePoint 2007:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\LAYOUTS\MyApp3
SharePoint permissions configuration files
The SharePoint trust (permissions) configuration files are located in the “config” subfolder of the “12” or “14” hive, e.g.:
SharePoint 2010:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\config\wss_mediumtrust.config
SharePoint 2007:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\config\wss_mediumtrust.config
Modifications made to the Hosting application’s Web.config file
Iron Speed Designer modifies your application’s ~\web.config file to:
-
Add SafeControls to hosting Web Application Apps web Config for every DLL, such as
<SafeControl Assembly="MyAppBaseClasses" Namespace="BaseClasses" TypeName="*" Safe="True" /> -
Set trust to WSS_Medium in hosting web.config. The default is:
<trust level="WSS_Minimal" originUrl="" />) -
Add Menu Provider to hosting web config, e.g.:
<add name="MyAppMenuElementsProvider" type="System.Web.XmlSiteMapProvider" siteMapFile="~/_layouts/MyApp/Menu Panels/menu.sitemap" /> -
Add Session and add ScriptModule tags to the <httpModules> section, e.g.:
<add name="Session" type="System.Web.SessionState.SessionStateModule"/>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> -
Add verb to <httpHandlers> section after <remove verb…>, e.g.:
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false" />
Your application’s Web.config file is modified using the WebConfigModifications class of SharePoint so that all modifications are tracked and managed by SharePoint. Thus, a .bak backup file is being created (e.g., web_2010_02_10_14_09_33.bak).
Modifications made to the Medium trust configuration file
Iron Speed Designer modifies the FileIOPermission class to allow path discovery inside the deployed application.