Showing posts with label SharePoint2013. Show all posts
Showing posts with label SharePoint2013. Show all posts

Know Your SharePoint Multi Server FARM Network Structure

This article describes the SharePoint Multi Server communication within the SharePoint farm.
Physical architecture relates to capacity planning and sizing depends on the multiple factors. I took a very simple example and try to explain, Is SharePoint Farm follow the Network Layer Architecture or Not.

Physical Network Layer Architecture (Normal Flow)




How to know the actual Server Communication within the SharePoint Farm

Browse the Central Administration
Central Administration -> System Settings -> Manage Server in FARM



Microsoft SharePoint Foundation Web Application Service is responsible to communicate with Database Server.
IF Microsoft SharePoint Foundation Web Application Service activated on Web Server, Then Web Server by-pass the network layer architecture and directly communicate with Database Server.
As depict above farm information, Now SharePoint FARM Network layer architecture look like


How WSP deploy to Multi Server FARM


Microsoft SharePoint Foundation Web Application Service is responsible to move the WSP solution to another server, wherever Microsoft SharePoint Foundation Web Application Service activated. Service automatically deploy the solution in other servers.




Handle Multiple Domain during SharePoint Migration

This blog describes the problem statement and resolution i.e. How to handle multi-domain issue during SharePoint Migration.
This is quite interesting & common scenario, which we face in almost all migration project i.e. On-Premises to On-Premises or On- Premises to Online.
SharePoint Migration project easily enters into escalation mode due to multi domain users after entire application migration.
Somehow application team tries to convince the business user to adapt or change the User Name with a NEW domain. This is something no business user ready to accept.
Scenario illustrated in below diagram:-


Problem Statement:-
Before Migration, Project was using Domain OLD.com and application URL like https://sharepoint.old.com where the user also have their login id like <<Domian>>\<<USerName>> old\user etc.
Business wants to migrate the application to different domain i.e. On Premises or Online.
New Domain like NEW.com and application URL like https://sharepoint.new.com
Users, who are part of the NEW domain can easily recognize by control and start using the application but some users are still part of the old domain.
As our new migrated application hosted into new domain so old domain user doesn’t recognize into new domain application.
 Below are the ways to resolve the issue:-
Option 1:-
If both domains have  TWO WAY TRUST. No configuration required. the user can be added as <<OLDDomain>>\<UserID>; instead of only user name.
 Option 2:-
If both domains have ONE WAY TRUST. Only people picker control configuration need to do using PowerShell. It will help control and application to recognize the user.
Option 3:-
 If both domains don't have TRUST process. User Profile Synchronization needs to perform. It will help control and application to recognize the user.


Ref :- https://collab365.community/sharepoint-2013-people-picker-problem-with-2-way-trusted-domains/

Mixed Data Type in Excel

Myth around MS-Excel as Data source using .Net (C#)
Recently, I observed in the couple of projects, people use MS-Excel as data source using
1.       Interop – (Without knowing the pre-requisites in production environment i.e. MS-Office not allowed in production environment)
2.       Third party tool (free & open source) – Use unsupported.Net Framework.
This article emphasis, known issue to use MS-Excel as data source using .Net (C#).
Problem Statement
Excel column decide the datatype based on a certain number of rows i.e. 8. If we are using excel with mixed datatype i.e. alphanumeric value where First 8 as the number and 9 as a string -> which return null as below source.

Excel Behavior
This is the default behavior of excel. It decides the column datatype based on first 8 rows.
Alternative Approach
1.       Read data using  Excel –cell range
2.       Third party open source tool having supported framework i.e. 4.6 onwards.
Best Approach (Recommended)
1.       Always use CSV file instead of Excel. Easy to traverse using file stream object.
2.       Registry Changes - If business allowed.
Excel file  as .xls
(Registry Key)
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel\TypeGuessRows
Excel file is .xlsx
Registry Key Excel 2007:

HKEY_LOCAL_MACHINE\Software\Microsoft\Office\12.0\Access Connectivity Engine\Engines\Excel\TypeGuessRows

Excel file is .xlsx
Registry Key Excel 2010:

HKEY_LOCAL_MACHINE\Software\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Excel\TypeGuessRows
Excel file is .xlsx
Registry Key Excel 2013:
HKEY_LOCAL_MACHINE\Software\Microsoft\Office\15.0\Access Connectivity Engine\Engines\Excel\TypeGuessRows


Note: - Value should be 0 instead of 8.




IIS Binding and Registry Entry in IAAS Server


Configure DNS setting  Configure Internet facing SSL SharePoint Site using IAAS


IIS Binding and Registry Entry in IAAS Server

Step1:- Open IIS right click on the web application and “Edit Binding”











































Step 2:- On the “Site Binding” screen, click on Edit

























Step 3:- Select the certificate created in previous step and save the changes:


























Step 4:- Registry Entry in the Server

Create & Set DisableLoopBackCheck property =1





Configure the SharePoint 2013 Site with Host Header & SSL Cert

Configure the SharePoint 2013 Site with Host Header & SSL Cert

Step 1:-

How to create the Cert
http://manojmittalblogs.blogspot.in/2016/10/configure-internet-facing-ssl_9.html

Step 2:-

How to create Cert mapping url in azure portal
http://manojmittalblogs.blogspot.in/2016/10/configure-internet-facing-ssl.html

Step 3:-
Create the SharePoint Web Application using Central Administration or Powershell.
Remember you should use the application url which should have domain. like I create in

Example   https://devsp01.cloudapp.azure.com.

Hostheader name would be  devsp01.cloudapp.azure.com and port number  

Powershell Script:-

Claim based Web Application with Host Header:-

$ap = New-SPAuthenticationProvider
New-SPWebApplication -name "Development Application"-HostHeader " devsp01.cloudapp.azure.com " –Url “https://devsp01.cloudapp.azure.com” –Port 443 -ApplicationPool "Dev-ApplicationPool" -DatabaseName "WSS_Content_ Dev" -DatabaseServer "Domain\UserName" -ApplicationPoolAccount (Get-SPManagedAccount " Domain\UserName ") -AuthenticationProvider $ap

Configure SSL Certificate in IAAS server

Configure SSL Certificate  in IAAS Server

As I am doing the set up for development environment, So I am going to use self signed  Cert.

Step 1:-   Open PowerShell Window as admin run below command:

Syntax:
$cert = New-SelfSignedCertificate -DnsName <<yourdomain.com>> -CertStoreLocation "cert:\LocalMachine\My"

Example
$cert = New-SelfSignedCertificate -DnsName devsp01.cloudapp.azure.com -CertStoreLocation "cert:\LocalMachine\My



Step 2:-  Run below command to export the certificate:

 Syntax:
     Export-Certificate -Type CERT -Cert $cert -FilePath <<filePath>>.cer


Example
Export-Certificate -Type CERT -Cert $cert -FilePath  .\ devsp01.cloudapp.azure.com.cer

here certificate created at above mentioned file path location.

Step 3: Add certificate to Trusted Root Certification Authorities

Browse the Run window and type MMC
















Step 4: . Add/Remove snap in:































Step 5: -Select Certificated à Add à Computer account à Local Computer


























Step 6:- Select Local Computer




































Step 6:- Expand Certificates a Trusted Root Certificate Authorities a Certificates a All Tasks a Import









































Step 7:- Browse the created certificate































You are done here.

Happy Codding

Configure Internet facing SSL SharePoint Site using IAAS

Configure Internet facing SSL SharePoint Site using IAAS 

Step 1: Browse the Azure Portal and Select Virtual Machine from Left Hand Side and click the virtual machine , which server site user want to browse
















Step 2:- Click on the public IP address 













Step 3:- Click Configuration & enter the DNS label, domain will be set like  devsp01.cloudapp.azure.com, Click on save. 

Here you are ready with internet facing URL using IAAS platform.




























Step4:- Allow the port ->  Do the configuration in Network Security Group.

Go to the more services and type network in search box



























Step 5:- Select the Server and click inbound security rules























Step 6:- Set Inbound Rule with selected parameter

1. Priority
2. Services
3. Protocol
4. Action and click Save 


















Azure portal level configuration done and you are ready with URL i.e.  https://devsp01.cloudapp.azure.com

Next step - Continue with below sequence of articles

1. Create the SSL certification and Mapping 
http://manojmittalblogs.blogspot.in/2016/10/configure-internet-facing-ssl_9.html

2. SharePoint Site Host
http://manojmittalblogs.blogspot.in/2016/10/configure-internet-facing-ssl_83.html

3. IIS Binding & Registry entry
http://manojmittalblogs.blogspot.in/2016/10/configure-internet-facing-ssl_3.html


Happy coding..

SharePoint 2013 Search Modify the Item Display Template

SharePoint 2013 Search Add Managed Property in Item Display Template

Item display template can be modified using Managed Property - We can add or remove the managed property and modify as per requirement.

How to access the Item Display Template , I explained in my earlier post here

Each Search display template contains default managed properties. They appear in the <mso:ManagedPropertyMapping> tag at the top of each template: 

Each Template have one-one mapping of property like:-




Take the  copies of the templates or modifying existing ones
To add a new managed property, simply add another entry. For example, if I had a managed property named "Country", I would add 'CountryOWSText':'CountryOWSText', to the <mso:ManagedPropertyMapping> tag:
If you have uploading the template to different site - Remember to change the url also.






Use the Managed Property, where you want to change the display the Template like below:-

Save the changes and upload the template in Display Template -> search folder and refer the same file in Search Result Web Part.

Click Ok  and publish the page and Search Result web part will start appearing as per our design.




Happy Coding..