Showing posts with label Sharepoint 2013. Show all posts
Showing posts with label Sharepoint 2013. Show all posts

Friday, October 21, 2016

Failed to register because the farm or partition is already registered with a workflow service

Failed to register because the farm or partition is already registered with a workflow service

I was recently training a colleague on administering SharePoint and he was encountering issues with being unable to publish SharePoint Workflows after he applied an SSL certificate to his SharePoint site.

Well, immediately after checking his IIS bindings and his AAM settings, the next thing I thought of was that he would have to re-register his SharePoint site with the Workflow Service.

Of course, he ran the following command:

Register-SPWorkflowService -SPSite "https://spse/sites" -WorkflowHostUri "https://spse:12290" 

But he received the following error message: 
Failed to register because the farm or partition is already registered with a workflow
service


Well, fortunately, there was an easy solution to this!!  All he had to do was run the command with the -Force parameter:

 Register-SPWorkflowService -SPSite "https://spse/sites" -WorkflowHostUri "https://spse:12290" -Force

That was all that was needed to resolve his issue!! 


Hope this help,
Oumaima

Friday, August 7, 2015

Office Web Apps not working for Content Search Web Part

Office Web Apps  not working for Content Search Web Part


Observation with Content Search WebPart.

The Office Web Apps Server opens the documents in Browser from the AllItems.aspx as well as the Search Results Page. But when I try opening from a content Search WebPart, it is not able to open in the Browser.

To enable Office Web Apps for search content web part, we should modify the url in the display template.

I have tried to replicate the behaviour from search webparts and added the following code from search display templates so that it supports OWA. Below is the code.

<html xmlns:mso="urn:schemas-microsoft-com:office:office" xmlns:msdt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882">
<head>
<title>AdSpace Picture on top, 3 lines on bottom</title>

<!--[if gte mso 9]><xml>
<mso:CustomDocumentProperties>
<mso:TemplateHidden msdt:dt="string">0</mso:TemplateHidden>
<mso:ManagedPropertyMapping msdt:dt="string">&#39;Picture URL&#39;{Picture URL}:&#39;PublishingImage;PictureURL;PictureThumbnailURL&#39;,&#39;Link URL&#39;{Link URL}:&#39;Path&#39;,&#39;Line 1&#39;{Line 1}:&#39;Title&#39;,&#39;Line 2&#39;{Line 2}:&#39;Description&#39;,&#39;Line 3&#39;{Line 3}:&#39;&#39;,&#39;FileExtension&#39;,&#39;SecondaryFileExtension&#39;,&#39;ContentTypeId&#39;,&#39;ServerRedirectedURL&#39;</mso:ManagedPropertyMapping>
<mso:MasterPageDescription msdt:dt="string">This Item Display Template will show a 304x100 picture of the item on top. The title and the default item description will display to the bottom of the picture with an additional line that is available for a custom managed property.</mso:MasterPageDescription>
<mso:ContentTypeId msdt:dt="string">0x0101002039C03B61C64EC4A04F5361F385106603</mso:ContentTypeId>
<mso:TargetControlType msdt:dt="string">;#Content Web Parts;#</mso:TargetControlType>
<mso:HtmlDesignAssociated msdt:dt="string">1</mso:HtmlDesignAssociated>
<mso:_dlc_DocId msdt:dt="string">ZRMVMDDDEAE7-1-215</mso:_dlc_DocId>
<mso:_dlc_DocIdItemGuid msdt:dt="string">583b0835-32ff-4d1c-983f-b6ff4a0ef956</mso:_dlc_DocIdItemGuid>
<mso:_dlc_DocIdUrl msdt:dt="string">http://sp2013-dev-6:7000/sites/adspace/_layouts/15/DocIdRedir.aspx?ID=ZRMVMDDDEAE7-1-215, ZRMVMDDDEAE7-1-215</mso:_dlc_DocIdUrl>
<mso:HtmlDesignConversionSucceeded msdt:dt="string">True</mso:HtmlDesignConversionSucceeded>
<mso:HtmlDesignStatusAndPreview msdt:dt="string">http://sp2013-dev-6:7000/sites/adspace/_catalogs/masterpage/Display Templates/Content Web Parts/Item_PictureOnTop.html, Conversion successful.</mso:HtmlDesignStatusAndPreview>
</mso:CustomDocumentProperties>
</xml><![endif]-->
</head>

<body>

    <!--
            Warning: Do not try to add HTML to this section. Only the contents of the first <div>
            inside the <body> tag will be used while executing Display Template code. Any HTML that
            you add to this section will NOT become part of your Display Template.
    -->
    <script>
        $includeLanguageScript(this.url, "~sitecollection/_catalogs/masterpage/Display Templates/Language Files/{Locale}/CustomStrings.js");
    </script>

    <!--
        Use the div below to author your Display Template. Here are some things to keep in mind:
        * Surround any JavaScript logic as shown below using a "pound underscore" (#_ ... _#) token
        inside a comment.

        * Use the values assigned to your variables using an "underscore pound equals"
        (_#= ... =#_) token.
    -->

    <div id="Item_PictureOnTop">
<!--#_


var useWACUrl = !$isEmptyString(ctx.CurrentItem.ServerRedirectedURL);
    
        if(ctx.ScriptApplicationManager && ctx.ScriptApplicationManager.states){
            useWACUrl = (useWACUrl && !ctx.ScriptApplicationManager.states.openDocumentsInClient);
  
        }

        var appAttribs = "";
        if(!useWACUrl)
        {
            if (!$isEmptyString(ctx.CurrentItem.csr_OpenApp)) { appAttribs += "openApp=\"" + $htmlEncode(ctx.CurrentItem.csr_OpenApp) + "\"" };
            if (!$isEmptyString(ctx.CurrentItem.csr_OpenControl)) { appAttribs += " openControl=\"" + $htmlEncode(ctx.CurrentItem.csr_OpenControl) + "\"" };
  
        }
        var url = ctx.CurrentItem.csr_Path;
    
     if($isEmptyString(url)){
            if(useWACUrl)
            {
                url = ctx.CurrentItem.ServerRedirectedURL;
   
            } else {
                url = ctx.CurrentItem.Path;
  
            }       
        }

var encodedId = $htmlEncode(ctx.ClientControl.get_nextUniqueId() + "_pictureOnTop_");

var linkURL = $getItemValue(ctx, "Link URL");
linkURL.overrideValueRenderer($urlHtmlEncode);
 var iconURL = Srch.ContentBySearch.getIconSourceFromItem(ctx.CurrentItem);

var line1 = $getItemValue(ctx, "Line 1");
var setLineHeightRenderer = function(valueInfoObj)
{
    if(!$isNull(valueInfoObj) && !valueInfoObj.isEmpty)
    {
        if(!$isNull(valueInfoObj.defaultValueRenderer))
        {
            return valueInfoObj.defaultValueRenderer(valueInfoObj);
        }
        else
        {
            return valueInfoObj.toString();
        }
    }
    else
    {
        return "&nbsp;";
    }
}
var line2 = $getItemValue(ctx, "Line 2");
line2.overrideValueRenderer(setLineHeightRenderer);
var line3 = $getItemValue(ctx, "Line 3");
line3.overrideValueRenderer(setLineHeightRenderer);
var pictureURL = $getItemValue(ctx, "Picture URL");
var pictureId = encodedId + "picture";
var pictureMarkup = Srch.ContentBySearch.getPictureMarkup(pictureURL, 304, 100, ctx.CurrentItem, "cbs-pictureOnTopImg", line1, pictureId);

var containerId = encodedId + "container";
var pictureLinkId = encodedId + "pictureLink";
var pictureContainerId = encodedId + "pictureContainer";
var dataContainerId = encodedId + "dataContainer";
var line1LinkId = encodedId + "line1Link";
var line1Id = encodedId + "line1";
var line2Id = encodedId + "line2";
var line3Id = encodedId + "line3";
 

 
 _#-->
        <div class="top-content-box" id="_#= containerId =#_" data-displaytemplate="ItemPictureOnTop">
          
            <div class="top-content-img" id="_#= pictureContainerId =#_">
                <a class="cbs-pictureImgLink" href="_#= $urlHtmlEncode(url) =#_" title="_#= $htmlEncode(line1) =#_" target="_blank" id="_#= pictureLinkId =#_">
                    _#= pictureMarkup =#_
                </a>
            </div>
                <h3 id="_#= line1Id =#_"><a class="cbs-pictureOnTopLine1Link" target="_blank" href="_#= $urlHtmlEncode(url) =#_" title="_#= $htmlEncode(line1) =#_" id="_#= line1LinkId =#_"> _#= line1 =#_ </a></h3>     
                <span class="content-date" title="_#= $htmlEncode(line2) =#_" id="_#= line2Id =#_"><img class="cbs-Thumbnail" src="_#= $urlHtmlEncode(iconURL) =#_" alt="_#= $htmlEncode(line1.defaultValueRenderer(line1)) =#_" id="_#= pictureId =#_" />_#=line2=#_</span>               
                
        </div>
    </div>
</body>
</html>


Basically,ctx.CurrentItem.ServerRedirectedURL is calculated by a managed property ServerRedirectedURL which needs to be included in the display template.
Problem solved.

Hope this Help.
Oumaima

Monday, August 3, 2015

Office Web Apps 2013 Server Install and Configuration

Office Web Apps 2013 Server Install and Configuration

Installing Office Web Apps

Office Web Apps 2013 is a stand-alone server web application that provides capabilities to open and render a Microsoft Office Word, Excel, PowerPoint, or OneNote document as a web page. Microsoft SharePoint 2013, Exchange 2013, and Lync 2013 can share the rendering service to display Office documents in those applications as a web page. Additionally, when accessed from within a SharePoint 2013 farm, Office Web Apps also enables rich editing features for those documents.
Note
  1. You cannot install Office Web Apps on the same server as SharePoint 2013
  2.           Office Web Apps cannot be a domain controller

Please follow the server preparation process in the following sections for the appropriate server, either Windows Server 2008 R2 or Windows Server 2012.

Windows Server 2008 R2 Preparation

Start by installing the following prerequisite software for Windows Server 2008 R2:
Open a PowerShell command running as an Administrator and execute the following commands to install the required roles and services for Office Web Apps.
Import-Module ServerManager
## Run the following command as a single line
Add-WindowsFeature Web-Server,Web-WebServer,Web-Common-Http,Web-Static-Content,Web-App-Dev,Web-Asp-Net,Web-Net-Ext,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Includes,Web-Security,Web-Windows-Auth,Web-Filtering,Web-Stat-Compression,Web-Dyn-Compression,Web-Mgmt-Console,Ink-Handwriting,IH-Ink-Support
Please continue with the “Office Web Apps Installation” section below.

Windows Server 2012 Preparation

To begin, open a PowerShell command running as an Administrator and execute the following commands to install the required roles and services for Office Web Apps.
Add-WindowsFeature Web-Server,Web-Mgmt-Tools,Web-Mgmt-Console,Web-WebServer,Web-Common-Http,Web-Default-Doc,Web-Static-Content,Web-Performance,Web-Stat-Compression,Web-Dyn-Compression,Web-Security,Web-Filtering,Web-Windows-Auth,Web-App-Dev,Web-Net-Ext45,Web-Asp-Net45,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Includes,InkandHandwritingServices
Please continue with the “Office Web Apps Installation” section below.

Office Web Apps Installation

Open and run the Office Web Apps setup.exe media to launch the setup wizard.
  1. In the Office Web Apps Server 2013 Wizard, on the Read the Microsoft Software License Terms page, select I accept the terms of this agreement and then select Continue.
  2. On the Choose a file location page, select the folder where you want the Office Web Apps Server files to be installed (for example, C:\Program Files\Microsoft Office Web Apps), and then select Install Now. Note that, if this folder does not exist, Setup will create it for you.
    The Choose a file location screen on the Office Web Apps install wizard.
    The Choose a file location screen on the Office Web Apps install wizard.
  3. When Setup finishes installing Office Web Apps Server, choose Close.
After installing the Office Web Apps 2013 server software, you are ready to install any additional add-ins and updates. You can also install any language packs your farm requires. To install the language packs, run the setup media for each of the language packs you desire.
If applicable, install the latest service pack Microsoft has released for Office Web Apps 2013 and then apply the latest service packs Microsoft has released for Office Web Apps 2013 language packs.
Finally, check for updates on Microsoft Update in the server’s control panel.

Configuring Office Web Apps

This section describes how to configure an Office Web Apps farm and join servers to it.
Important: Low memory conditions can cause Office document previews to fail in Office Web Apps. Verify that any servers that run Office Web Apps have sufficient memory.
On the first server for the Office Web Apps farm, execute the following PowerShell command to provision the farm:
New-OfficeWebAppsFarm -InternalUrl "https://office1.contoso.com" -ExternalUrl "https://office.contoso.com" -SSLOffloaded –EditingEnabled
The SSLOffloaded command switch configures Office Web Apps for hardware load-balancing, where the load-balancing device manages the SSL certificate and then relays the request to an Office Web Apps server over HTTP unencrypted traffic. This improves the overall performance but does require a secure network between the load-balancer and the Office Web Apps servers.
The following image provides an example of the expected output from the PowerShell command.
PowerShell results from configuring an Office Web Apps farm
PowerShell results from configuring an Office Web Apps farm
Critical: Before you can use the Office Web Apps farm, you must add your domain to the list of allowed hosts.
Run the following PowerShell command to add your domain to the list of allowed hosts, substituting your domain for “contoso.com.”
New-OfficeWebAppsHost -Domain contoso.com
Once you have provisioned an Office Web Apps farm and allowed your domain, you can join additional Office Web Apps servers to the farm. To join additional servers, install the Office Web Apps software by following the steps in the previous section and then execute the following PowerShell command.
New-OfficeWebAppsMachine –MachineToJoin “office1.contoso.com
You can test the Office Web Apps configuration by navigating to this URL and verifying it displays a Web app Open Platform Interface (WOPI)-discovery XML file:
https://office.contoso.com/hosting/discovery
(replacing office.contoso.com with your OWA external domain)
Note: For more information on deploying and configuring Office Web Apps, please see this TechNet article: http://technet.microsoft.com/jj219455

Configuring the Windows Firewall for Office Web Apps Traffic

On each Office Web Apps 2013 Server, you will need to set a firewall rule to allow Office Web Apps inter-farm traffic and HTTP/HTTPS traffic. Alternatively, you can disable the Windows Firewall if you choose and if you have another firewall solution.
You can set the Windows Firewall rules by navigating to the Control Panel, then click System and Security, then click Windows Firewall, and finally clickAdvanced settings. In the Inbound Rules area, ensure that the server allows connections on port 80 (HTTP) and port 443 (HTTPS). Add the port for the Office Web Apps inter-farm communication by following these steps:
  1. In the Windows Firewall with Advanced Security window, click Inbound Rules.
  2. In the Actions panel, click New rule…
  3. In the New Inbound Rule Wizard window, select Ports as the Rule Type and click Next.
  4. Select TCP and enter “809” for the Specific local ports. Click Next.
    Windows Firewall Port Rule for Office Web Apps communication
    Windows Firewall Port Rule for Office Web Apps communication
  5. Click Next. On the Profile screen, uncheck Public and click Next.
  6. On the Name screen, enter “Office Web Apps Inter-Farm Communication” and click Finish.

Configuring a SharePoint 2013 Farm for Office Web Apps

Logon to the SharePoint application server that hosts Central Administration and open the SharePoint 2013 Management Shell (PowerShell), running it as an administrator. Next, enter the following PowerShell command:
New-SPWOPIBinding -ServerName “office1.contoso.com
Run the following PowerShell command to enabled OAuth over HTTP.
$config = (get-spsecuritytokenserviceconfig)
$config.allowoauthoverhttp = $true
$config.update()
Run the following PowerShell command to change the WOPI zone to external-https.
Set-SPWOPIZone –zone “external-https”
Finally, verify that Office Web Apps is working by navigating to a SharePoint 2013 document library and verify that you can open a document as a web page.

Wednesday, July 22, 2015

SP2013 Search – Fixing the Search Service after the Index Drive Fills

SP2013 Search – Fixing the Search Service after the Index Drive Fills

In SharePoint 2013 farms when the index drive gets full the search app gets into an unhealthy state and can be difficult to get it to recover. The following steps can be used in order to recover the search application. The most common indicators that the search application has gotten into this unhealthy state (Besides search not working) is the Search Index Partition (in search topology) on the Search Admin Page shows a warning icon. However the following steps can be used to resolve the issue:
1.   First Try to Restart the Search Service (Windows Service):
SP2013WindowsSearchService.png 
2.   If restarting the Search Service does not resolve the issue, try the standard options before moving onto anything more drastic:
    a.   Restart the SharePoint Timer Service
    b.   Reset IIS (Or restart the Application Pool for the Search App)
    c.   Reboot the Server
3.   If none of those options work the best bet is to use the following steps:
4.   Reset the Content Index (To free up space on the Index Drive):
    a.   Using PowerShell use the following command (Note this will require a re-crawl of all content sources)
    b.   $ssa = Get-SPEnterpriseSearchServiceApplication
         i.   This assumes you have only one search application.
    c.   $ssa.Reset($false, $false)
    d.   Note the two parameters, these are optional but they tell SharePoint:
         i.    Not to send search alerts during the reset
         ii.    And not to ignore servers that have non-responsive search applications
 5.   If resetting the Content Index does not work, you can also do the following:
     a.   Clear the Configuration Cache (must be done on each server in the farm to avoid further conflicts)
     b.   Try to Pause/Resume the Search Service (Restarting the Query Component no longer seems to be an option in  SharePoint 2013)
     c.   If the Search Service Pauses but will not resume use the following PowerShell to force it
          i.   $ssa = Get-SPEnterpriseSearchServiceApplication
          ii.   $ssa.ForceResume($ssa.IsPaused())
          iii.   This step could take a while (I have seen it take a few hours)
     d.   Once the above finishes, Reset the Index via PowerShell as documented above in Step 4.
     e.   This step could take a while (depends on the size of the index).
6.   If the Index does not finish resetting within 24hours, restart the SharePoint Server Search 15 service in the services.msc
7.   Check your search application. All should be showing green now for the search topology and the search admin status should be running.
8.   Begin Re-crawling content sources in the order of importance.

 
Hopefully this helps.
Oumaima

Monday, April 6, 2015

Create a PowerPivot Workbook for SharePoint

Create a PowerPivot Workbook for SharePoint


If you plan to publish a PowerPivot workbook to SharePoint, be sure to consider how it might be used in a collaborative environment. The workbook might become the basis for Reporting Services reports created by your colleagues, repurposed in other PowerPivot workbooks, or linked to from different sites, possibly in different farms. Knowing in advance that your published PowerPivot workbook might be used in new and different ways can help you make decisions about how you add, modify and present the data that you create in a PowerPivot workbook.
This topic contains requirements, design tips, and data sharing and security issues to consider when designing workbooks that are intended for publication to SharePoint.

Preparation


If you are familiar with Excel, you already have the foundational skills for creating and using PowerPivot data. The best way to build on those skills is to learn about the expression language and the Excel data visualization features that allow you to present PowerPivot data in the most effective way.
Visualizing data   Although the PowerPivot workspace is tabular and has no data presentation features of its own, you can create sophisticated presentations reports by using data visualization objects in Excel such as PivotTables, PivotCharts, filters, and Slicers. If you are not familiar with the use of PivotTables or PivotCharts, the new capabilities in PowerPivot will give you a reason to learn. For more information about working with PivotTables, see Overview of Reports, Charts, and PivotTables
Adding and updating formulas    In PowerPivot, formulas are more than a way to calculate numbers; formulas created by using the Data Analysis Expressions (DAX) language let you build relational queries, look up related values, and develop custom calculations over time. DAX is an extension of the formula language in Excel, but is far more powerful. For more information about DAX, including samples, see Data Analysis Expressions (DAX) Overview.
Sharing your work   Saving a PowerPivot workbook to SharePoint 2010 gives you a way to share your work with others in your organization. When you publish your workbook to SharePoint, you can take advantage of the presentation features in PowerPivot Gallery. For more information about PowerPivot Gallery, see Use PowerPivot Workbooks on SharePoint.

Create Refreshable Data Connections


Data that you load into a workbook is static by default, but once published, you can arrange for automatic refresh of the data. Data refresh that runs on SharePoint uses the connection information in your workbook. While you can replace user name and passwords in a data refresh schedule, you cannot change the connection information in a workbook that is published to a server. If you want to change a data source connection in a workbook that you saved to SharePoint, you must download it to your workstation to the make that change in PowerPivot for Excel. For this reason, before you save a file to SharePoint, check the data source connection information to verify that the connection will work once data refresh is initiated from the server. Imported data that is kept on file shares or corporate servers that are generally available to a large group of users are most likely to have connection information that is specified in a way that will resolve equally well on SharePoint. In contrast, data that you import from a local file on your computer might not work if the server tries to use the same connection string to refresh data.
The credentials and connection strings that are used in data refresh are stored inside the PowerPivot workbook, one connection for each data source. This includes the file location or file name that you specify during data import, which is stored verbatim in the workbook and can be viewed by other users of the workbook. The following is a summary of how you can change different parts of the connection string:
  • Data source. Connection strings can be edited after you create the workbook, but the change must be made in PowerPivot for Excel, not on SharePoint. This change requires that the data in the workbook be refreshed and all formulas recalculated. Depending on the complexity of your workbook, this might take a long time. For more information, see Different Ways to Update Data in PowerPivot.
  • User name and password. You can override the credentials that are stored inside the workbook by specifying different ones when you set up data refresh on SharePoint, but doing so requires extra steps by your SharePoint administrator.

Best practices for setting up connection information

Although PowerPivot data is static by default after you import it into the PowerPivot window, you can enable regular updates from connected data sources by ensuring that the connections you define are reusable after the workbook is published to SharePoint.
For best results, follow these recommendations:
  • Use connected data sources wherever possible. Do not use data sources that are on private computers that might be shut off, or on servers that have restricted access, unless all the potential users also have access.
  • Specify data or file locations in a format that is accessible over a network connection. An HTTP URL or a shared folder (such as \\AWSRV-01\public\MarketData) are examples of locations that can be accessed from either a client workstation or a SharePoint server.

Securing PowerPivot Workbooks on SharePoint


Before you publish a PowerPivot workbook to SharePoint, review the data so that you fully understand what you are publishing. Whenever you publish a workbook, the columns and tables in the workbook will be available to all users, even if you create a different presentation for reports.
In other words, all data that you add to the PowerPivot window is accessible even if it is not visible. For example, filters that you use to exclude information in a PowerPivot table or PivotTable do not apply when you use that same PowerPivot data to create a Reporting Services report or to import data into a second workbook.
Remember that SharePoint permissions are set on documents, and not on information within a document. If you have a workbook that contains sensitive data, be sure that you publish the workbook to a library that is only accessible to authorized users.
For more information, see Secure a PowerPivot Workbook on SharePoint.

Source : https://msdn.microsoft.com/en-us/library/gg413412(v=sql.110).aspx

Thursday, March 5, 2015

Setting up your App domain for SharePoint 2013

Setting up your App domain for SharePoint 2013


The most important change in SharePoint 2013 for developers is the introduction of SharePoint apps. An app for SharePoint is a small and isolated application that provides a specific bit of functionality. SharePoint apps can and have to be added to or removed from a site by the site owner.  Apps have their own, isolated URLs, which are separate from the URLs of the sites where the app is being deployed to and where the app is being used. In order to provide isolation apps run in their own domain, instead of in the same domain name as your farm. Using a different domain name for apps helps prevent cross-site scripting between apps and SharePoint sites. 
Each installation of an app has its own unique URL within the app domain. The app’s URL is based on a template “http://[app prefix][app hash].[app domain]/[relative site url]/[app name]. When you add an app to a site, a subweb of that site is created to host the app content. This subweb is not visible on the Site Contents page though.
Because apps run in their own app domain you will have to configure Domain Name Services (DNS) in your environment in order to be able to host apps. There is a page on TechNet that describes how to setup you DNS, but because it took me a while to get it all working I decided to write a step by step guide, which is what you’re reading now.

You can choose whether you want your app domain to be a subdomain of the domain that hosts the SharePoint environment (option B), or whether you want to create a completely new domain for your apps (option A). Creating a new domain specifically to host your apps in is a bit more secure, but it also requires a little bit more configuration. I will describe both approaches in this article. If you don’t have control over your DNS you will have to ask an administrator to perform these steps for you.

Option A: Create a new domain to host your apps in

  • Go to “Start”
  • Click on “Administrative Tools”
  • Select “DNS”
Open DNS
  • Right click “Forward Lookup Zones” and select “New Zone…”
  • Click “Next”
  • Keep the default and click “Next” again
  • In most cases, especially if your development server is in it’s own domain you can use the default on the next tab again and can just click “Next”
  • You now have to specify a zone name. It’s up to you what you choose here. My domain name is “solutions.com” and for my app domain I will use “solutionapps.com”
  • Click “Next”
New Zone Wizard
  • Click “Next”
  • Click “Finish”
DNS Manager
  • Right click on your new zone and select “New Alias (CNAME)…”
  • Fill in a * for “Alias name (uses parent domain if left blank)”
  • Click “Browse”
  • Double click on your server name
  • Double click “Forward Lookup Zones”
  • Double click the domain of your SharePoint environment. In my case this is “solutions.com”.
  • Select “(Same as parent folder)” and click “OK”
  • Click “OK”.
* Note that selecting the FQDN of the domain in here will only work in single server scenarios. If you are using more than one server you should be pointing to the DNS record of the web server in here. This is either the DNS A record for the web server, or the DNS record of the primary cluster address for NLB environments.
Create a CNAME
  • You are now done setting up your DNS and it should look like this:
DNS Manager

Option B: Create a subdomain to host your apps in

  • Go to “Start”
  • Click on “Administrative Tools”
  • Select “DNS”
Open DNS
DNS Manager
  • Right click on the name of your domain and select “New Alias (CNAME)…”
  • Fill in “*.app” for “Alias name (uses parent domain if left blank)”
  • Click “Browse”
  • Double click on your server name
  • Double click “Forward Lookup Zones”
  • Double click the domain of your SharePoint environment. In my case this is “solutions.com”
  • Select “(Same as parent folder)” and click “OK”
  • Click “OK”
* Note that selecting the FQDN of the domain in here will only work in single server scenarios. If you are using more than one server you should be pointing to the DNS record of the web server in here. This is either the DNS A record for the web server, or the DNS record of the primary cluster address for NLB environments.
Create a new CNAME
  • You are now done setting up your DNS and it should look like this:
DNS Manager

Configuring SharePoint

I’m assuming you already created an App Management and a Subscription Settings Service Application and that you already started the App Management and Subscription Settings services on your servers. If not this My acticle will tell you how to. Note that you have to use PowerShell to create the Subscription Settings Service Application. There is no user interface for it.
Service Applications
Services on Server
  • Go to Central Administration
  • Click on “Apps” in the left side navigation
  • Click “Configure App URLs”
  • Fill in the URL of the app domain that you configured. If you choose to use Option A the url will be something like “solutionapps.com”, if you choose to use Option B it will look like app.solutions.com.
  • Fill in an app prefix. This can be anything you like, although it is best to keep this short. I used “app” myself.
Configure App URLs
Two example urls for two different apps on the same site are:
http://app-fef8493a3feb20.solutionapps.com/sites/apptest/[App1AppName]/Pages/Home.aspx
http://app-fef8493a3feb1d.solutionapps.com/sites/apptest/[App2AppName]/Pages/Default.aspx
As you can see both apps have their own app hash, but both are in the same domain.

Hope this Help,
Oumaima

Sharepoint Designer 2013, XSLT List View Options ribbon option is not showing

Sharepoint Designer 2013, XSLT List View Options ribbon option is not showing I have an ordinary Wiki Page, also tried making an Article...