As sandbox solutions are deprecated, SharePoint 2013 brings the new capability called “Apps” to extend SharePoint with client side code. Although the conventional SharePoint solution approach (Full Trust) is still there, Microsoft encourages the usage of Apps. Everything is an App, including Lists & Libraries, Web Parts, etc.
This implementation guide walks through configuring apps for SharePoint 2013 step by step.
Steps In Summary:
- Create a forward Look-up zone and Wildcard Alias (CNAME) in your DNS Server.
- Start App Management Service and Subscription Services. Create Service Applications for them.
- Configure App management service by creating App catalog and providing App URLs.
- Install Apps to App Catalog from App Store / In-house. Add them to SharePoint sites.
Step 1: Create a New Forward lookup zone
As SharePoint 2013 apps works on its own domain, we need to have a new domain created in DNS sever. So, lets create a new domain in DNS say: CrescentApps.com. Login to your DNS server and create a new Forward Look-up zone.
Create a Wildcard (*) CNAME in CrescentApps.com, Point it to your SharePoint site: SharePoint.Crescent.com(Assuming there is a HOST A Record: SharePoint.Crescent.com is already created)
It should get the reply from SharePoint.Crescent.com.
Step 2: Start App Services and Create Service Applications
Go to Central Admin >> System Settings >> Manage services on server >> Start these two services :
- App management service
- Microsoft SharePoint Foundation Subscription Settings Service – which takes care of multi-tenancy feature for apps.
and then two service application needs to be created. App Management service can be created via Central Administration . But the Subscription service application can’t be created via Central Admin.
Create App Management Service Application
Go to Central Admin >> Application Management >> Service Applications >> New >> App Management Service. Provide necessary parameters and create new App Management service application.
Create Subscription Settings Service Application using PowerShell
Subscription settings service application can be created only with PowerShell and there is no Central Admin UI!
#Get the managed account to use. $account = Get-SPManagedAccount "Crescent\SPSvcServApp" # Create New application pool for the Subscription Settings service application. $AppPoolSubSvc = New-SPServiceApplicationPool -Name SubSettingsServiceAppPool -Account $account # Create Subscription Settings service application $AppSubSvc = New-SPSubscriptionSettingsServiceApplication -ApplicationPool $appPoolSubSvc -Name SubSettingsServiceApp -DatabaseName SubSettingsServiceDB # Create a proxy for the Subscription Settings service application. $proxySubSvc = New-SPSubscriptionSettingsServiceApplicationProxy -ServiceApplication $appSubSvc
You can verify the subscription service application created from central admin:
Step 3. Configure App management service by creating App catalog and providing App URLs.
Configure the App URL
Go to Central Admin >> Apps >> Click on App URL under App Management, Specify App Domain (Say: CrescentApps.com) and App Prefix (say: App)
Configure App Catalog – App catalog is the repository for Apps. In other words, Its actually is a site collection on the web application that hosts the apps.
Go to Central Admin >> Apps >> Manage App Catalog >> Pick the relevant web application and create a new SharePoint 2013 app catalog site.
Grant access to “NT Authority\Authenticated users” under End-users section. That’s all, we’ve done configure SharePoint 2013 apps environment.
Step 4. Install Apps to SharePoint site from App Store / In-house.
Go to your App Catalog site,Click on “SharePoint Store” link from Quick launch.
Pick the desired application and Add the App. You may be prompted to Login with your Microsoft account (Hotmail/Outlook.com/Live)
Once installed, you can add that app to your SharePoint sites, by clicking “Add an app” from site settings menu.
Pick the desired app to create a new instance of it.
Let’s Try this again Error Message:
You get this error message when trying to install a new App.
Lets try this again…
Everything is fine, but we had a small problem getting your license. Please go back to the SharePoint Store to get this app again and you won’t be charged for it.
Solution: Don’t Install apps with Farm Admin account ( or System account). Login with the account other than Farm Admin account install again!
HTTP 404 The Web Page Cannot be Found error:
If you use path-based site collections with Host header (which is other than the machine name), it results in page cannot be displayed error, When try adding apps.
Solution: Create a web application without host headers on Port 80! Also, Stop/Delete the Default Web Site from IIS (Thanks to Technet Forums!). It also happens for reasons such as: Forward lookup zone is not created, Your App Domain settings in Central Admin is wrong, etc!
To create a new web application using PowerShell:
$ap = New-SPAuthenticationProvider New-SPWebApplication -Name "SharePoint - 80" -ApplicationPool "SharePoint 80" -ApplicationPoolAccount (Get-SPManagedAccount "Crescent\Administrator") -Port "80" -AuthenticationProvider $ap -AuthenticationMethod NTLM -DatabaseName "WSS_Content_default"
Technet guide: Configure an environment for apps for SharePoint 2013