lunedì 12 dicembre 2016

The program w3wp.exe, with the assigned process ID, could not authenticate locally by using the target name HTTP/WEBSITENAME

Un breve post su un errore molto particolare (mi si è presentato solo dopo aver spostato i content db). In Sharepoint si manifesta con l'impossibilità di navigare sulla pagina "settings.aspx", che richiede 3 volte l'autenticazione e poi da' "blank page". Sull'Event Viewer verrà segnalato un errore simile a questo:
"The program w3wp.exe, with the assigned process ID, could not authenticate locally by using the target name HTTP/WEBSITENAME. The target name used is not valid. A target name should refer to one of the local computer names, for example, the DNS host name. Try a different target name"
I passi da seguire sono questi:
  1. Andare su REGEDIT e aprire la chiave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0 
  2. Click con il destro su MSV1_0 –> New -> Multi-String Value 
  3. Il nuovo Multi-String Value va rinominato "BackConnectionHostNames"
  4. Click con il destro sul valore appena creato e selezionare "Modify" 
  5. Inserire l'hostname del sito (per esempio: serverSP1) e nella riga sotto il FQDN (per esempio: serverSP1.mydomain.local)
  6. Riavviare IIS

giovedì 13 ottobre 2016

JQuery scrolling in SharePoint

Veloce post per mia futura memoria e perchè ho passato mezz'ora ad adattare un componente JQuery a funzionare in una master page Sharepoint 2013.
Se avete nel vostro Javascript una funzione del tipo:

$window.scroll(function () {

dovete sapere che in Sharepoint 2013 il body NON scrolla, scrolla solo il div con id s4-workspace. Perciò ogni riferimento all'oggetto $window va sostituito con quello al div e perciò:

$window.scroll(function () { --> $('#s4-workspace').scroll(function () {
$window.scrollTop --> $('#s4-workspace').scrollTop
.......
.......
ecc. Happy JQuery coding su Sharepoint :-)

venerdì 7 ottobre 2016

Fix dell'errore - “Internet Explorer cannot display the webpage” durante la creazione di nuove web application in Sharepoint 2013

Oggi il fix per un errore abbastanza comune soprattutto in farm con hardware "povero". Durante la creazione di una nuova Web Application in SharePoint 2013 può accadere che vi venga mostrato un popup con il messaggio: "Internet Explorer cannot display the webpage" (vedi figura):



Le cause possibili sono due:
  • troppe web application
  • Sharepoint è troppo lento
In questo post do' una risoluzione (o meglio un workaround) al secondo caso.  In pratica, durante il processo di creazione di una web application, Sharepoint fa lo shutdown degli application pools che hanno un timeout di circa 90 secondi di default. Quindi quello che faremo è aumentare il timeout dell'application pool della Central Administration. Quindi:

  • sul server dove c'è la Central Admin aprire IIS manager.
  • nella tree view, espandere il nome del server e cliccare su Application Pools.
  • individuare la SharePoint Central Administration v4 application pool. Cliccare con il destro e scegliere Advanced Settings.



Vanno aumentati i seguenti valoi come in figura:
  • Ping Maximum Response Time
  • Shutdown Time Limit (seconds)
  • Startup Time Limit (seconds)





martedì 29 marzo 2016

Abilitare l'accesso anonimo su Sharepoint 2013

Oggi un post veloce veloce, ma sempre utile: come abilitare l'accesso anonimo ai vostri siti Sharepoint. Le motivazioni per prendere tale decisione sono molteplici, la più classica di tutte è la necessità di esporre su Internet un sito. Incominciamo:  nella Central Admin andare sulla sezione Application Management e cliccare su "Manage web applications".  Selezionare una delle Web Application e sul ribbon in alto cliccare su Authentication providers, si apre una finestra modale con la lista delle "zone" abilitate ("Default" c'è sempre).


Cliccando sul link "Default" si apre un'altra finestra modale su cui va spuntata la casella Enable anonymous access e poi cliccato sul bottone "Save".


A questo punto, navigate al sito cui dare accesso anonimo e andate sui Site Settings e cliccate il link "Users and Permissions". Adesso sarà comparso sul ribbon il bottone "Anonymous Access".

Cliccando su questo bottone viene mostrata una finestra modale in cui va scelta l'opzione "Entire web site" e cliccato su "Ok"


Tra i gruppi del sito ne sarà stato creato uno nuovo chiamato Anonymous users e il sito sarà liberamente accessibile da tutti :-)




venerdì 18 marzo 2016

Configurare Search Server su Sharepoint Foundation 2013

Oggi parlerò della configurazione del Search Server su Sharepoint Foundation 2013. Sottolineo "Foundation" perchè la configurazione è sensibilmente diversa da quella del suo fratello maggiore.
Come quasi tutti sanno, la prima cosa da fare è fare il provisioning della Search Service Application. Per creare una nuova Search service Application, nella Central Administration andare in Application Management e scegliere la voce Manage Service Applications. Da qui cliccare sul pulsante "New" in alto a sinistra e ...... NON c'è la voce relativa alla Search Service Application :-).


Il motivo è che in Sharepoint Foundation la Search service Application può essere creata solo attraverso il wizard di configurazione. Quindi ripartiamo dalla Central Administration e scegliamo la voce Configuration Wizards in basso a sinistra. 

Lanciare il Wizard cliccando Start Wizard come mostrato nell'immagine qui sotto. 

Dopo aver scelto il managed account con cui far funzionare la service application, nella schermata mostrata qui sotto deselezionare tutto tranne Search Services Application e cliccare sul pulsante "Next". 


Sharepoint macinerà codice per un po' di tempo e poi vi chiederà se volete creare una Site Collection. Cliccate sul bottone "Skip" e vi sarà mostrato un riassunto di ciò che è stato creato.

Premete sul pulsante "Finish" e vi sarà mostrato l'elenco delle Service Applications create. Anche il Search Server sarà in stato "Started"



Adesso vanno configurate le Content Sources. Cliccando sulla Search Service Application nella lista delle Service Applications, si arriva alla schermata utilizzata per la configurazione della ricerca su Sharepoint.

Dal menu a sinistra scegliere la voce Content Sources nel menu Crawling. Normalmente è già definita una Content Source: Local Sharepoint Sites 

Già così i le sitecollection create sulla server farm vengono indicizzati. In ogni caso descrivo qui come creare una nuova Content Source (utile per esempio se si usa un host address e un alternate URL per accedere ad una sitecollection). 
Cliccare su New Content Source e inserire i dati essenziali per definire la content source e cioè: 
  • Il nome
  • La tipologia di contenuti da indicizzare (normalmente SharePoint sites)
  • L'indirizzo di partenza (Es: http://mio.sitodaindicizzare.it)

Vanno poi impostate le regole di indicizzazione (di solito lasciate come nell'immagine qui sotto) e lo scheduling per le indicizzazioni complete e incrementali.





Se si sceglie l'opzione Continuous Crawl il contenuto viene indicizzato non appena l'utente ne fa l'upload in Sharepoint. La performance della farm in questo caso diminuisce. L'ultimo passo è la creazione di una sitecollection di tipo Basic Search Center in cui visualizzare i risultati. Basta creare una nuova sitecollection dalla Central Administration e scegliere il template Basic Search Center (ATTENZIONE: se non compare il template, ricordarsi di attivare la giusta feature nelle impostazioni della Central Administration)











venerdì 4 marzo 2016

Come individuare quale site template è stato utilizzato

Oggi un post semplice semplice, ma utile: come individuare quale site template è stato utilizzato per creare un sito SharePoint. Basta andare su una pagina qualunque del sito e vedere l'HTML generato ("View source" se avete IE o Edge in inglese, HTML se lo avete in italiano). Sul sorgente HTML della pagina cercate "SiteTemplateID" e troverete il seguente codice Javascript


var g_wsaSiteTemplateId = ‘CODICE TEMPLATE’;

La lista dei codici è riportata qui sotto

Template ID
Titolo
GLOBAL#0Global template
STS#0Team Site
STS#1Blank Site
STS#2Document Workspace
MPS#0Basic Meeting Workspace
MPS#1Blank Meeting Workspace
MPS#2Decision Meeting Workspace
MPS#3Social Meeting Workspace
MPS#4Multipage Meeting Workspace
CENTRALADMIN#0Central Admin Site
WIKI#0Wiki Site
BLOG#0Blog
SGS#0Group Work Site
TENANTADMIN#0Tenant Admin Site
APP#0App Template
APPCATALOG#0App Catalog Site
ACCSRV#0Access Services Site
ACCSRV#1Assets Web Database
ACCSRV#3Charitable Contributions Web Database
ACCSRV#4Contacts Web Database
ACCSRV#5Projects Web Database
ACCSRV#6Issues Web Database
ACCSVC#0Access Services Site Internal
ACCSVC#1Access Services Site
BDR#0Document Center
DEV#0Developer Site
DOCMARKETPLACESITE#0Academic Library
EDISC#0eDiscovery Center
EDISC#1eDiscovery Case
OFFILE#0(obsolete) Records Center
OFFILE#1Records Center
OSRV#0Shared Services Administration Site
PPSMASite#0PerformancePoint
BICenterSite#0Business Intelligence Center
SPS#0SharePoint Portal Server Site
SPSPERS#0SharePoint Portal Server Personal Space
SPSPERS#2Storage And Social SharePoint Portal Server Personal Space
SPSPERS#3Storage Only SharePoint Portal Server Personal Space
SPSPERS#4Social Only SharePoint Portal Server Personal Space
SPSPERS#5Empty SharePoint Portal Server Personal Space
SPSMSITE#0Personalization Site
SPSTOC#0Contents area Template
SPSTOPIC#0Topic area template
SPSNEWS#0News Site
CMSPUBLISHING#0Publishing Site
BLANKINTERNET#0Publishing Site
BLANKINTERNET#1Press Releases Site
BLANKINTERNET#2Publishing Site with Workflow
SPSNHOME#0News Site
SPSSITES#0Site Directory
SPSCOMMU#0Community area template
SPSREPORTCENTER#0Report Center
SPSPORTAL#0Collaboration Portal
SRCHCEN#0Enterprise Search Center
PROFILES#0Profiles
BLANKINTERNETCONTAINER#0Publishing Portal
SPSMSITEHOST#0My Site Host
ENTERWIKI#0Enterprise Wiki
PROJECTSITE#0Project Site
PRODUCTCATALOG#0Product Catalog
COMMUNITY#0Community Site
COMMUNITYPORTAL#0Community Portal
SRCHCENTERLITE#0Basic Search Center
SRCHCENTERLITE#1Basic Search Center
SRCHCENTERFAST#0FAST Search Center
visprus#0Visio Process Repository

martedì 1 marzo 2016

Sharepoint 2013 - Migrare i Content Database da una farm ad un'altra

Affronto qui un argomento sempre attuale (anche per l'inveterata abitudine di ogni servizio di gestione IT di cambiare e riconfigurare parco macchine e topologia della Intranet) e cioè come migrare i content databases delle site collections di una farm su una nuova farm.
Do' per scontato che sulla nuova farm sia già installato Sharepoint 2013 correttamente configurato (ATTENZIONE: le due farm DEVONO essere localizzate nella stessa lingua, basta anche installare il language pack, altrimenti si avrà un errore bloccante rintracciabile nei log durante il caricamento dei regional settings) e siano state create le giuste utenze di dominio. In generale ne bastano 2 o 3 (i nomi degli utenti sono solo indicativi e utilizzati a titolo d'esempio):
  • DOMAIN_NAME/sp_farm come amministratore della farm e utente per il servizio Timer e Administration di Sharepoint
  • DOMAIN_NAME/sp_appservice per le service applications
  • DOMAIN_NAME/sp_wbsvc per i web services
Lo spostamento consiste a grandi linee in questi passi:
  1. Sulla farm d'origine fermare i servizi Sharepoint Administration, Sharepoint Timer e Sharepoint Server Search e il servizio web server (w3svc)
  2. Sulla macchina SQL della vecchia farm va fermato il servizio MSSQLSERVER dell'istanza utilizzata per contenere i db della vecchia farm Sharepoint
  3. I database interessati dalla migrazione, vengono copiati dalla directory DATA della macchina SQL d'origine alla cartella DATA della macchina SQL di destinazione
  4. Sulla farm di destinazione va creata una Web Application  identica a quella che si vuole migrare (stessa porta e nome). Al content database associato alla web application andrebbe associato un nome univoco che non coincide con nessuno dei nomi dei database da spostare. In questo esempio lo chiameremo "WSS_Content_Fake".
  5. Sull'istanza SQL destinata alla nuova farm, collegare (attach) i database (.mdf) che erano associati sulla vecchia farm alla Web Application che abbiamo ricreato sulla nuova farm.
  6. Nel caso i files vadano rinominati ricordarsi di farlo dalla schermata utilizzata per collegare i db, scegliendo il giusto file fisico sotto e il giusto nome di file destinazione sopra
  7. N.B. Questo passo è molto importante. Va aperta la shell di amministrazione di Sharepoint ed eseguiti i seguenti comandi (il secondo per ognuno dei db collegati al passo 5 e appartenenti alla Web Application
> $webapp = Get-SPWebApplication http://mywebapplication
> Mount-SPContentDatabase -Name Nome_content_db_collegato -WebApplication $webapp
> $nocontent = Get-SPContentDatabase -Identity "WSS_Content_Fake"
> Dismount-SPContentDatabase $nocontent

IMPORTANTE: A questo punto eseguire iisreset



Adesso dovrebbe essere tutto a posro. Vanno copiati nella directory hive di Sharepoint anche i file custom della vecchia farm (css,js e immagini). Andrà poi adattata un po' la grafica.

Nel caso fosse una sitecollection con experience 2010, è consigliato un upgrade alla experience 2013 che puó essere avviato dalla pagina delle Impostazioni.



 Nel caso la grafica non venga molto bene, basta applicare un tema tra quelli forniti da sharepoint per sistemare tutto :-)











lunedì 29 febbraio 2016

Di nuovo online!!

Salve a tutti. Questo blog è la continuazione del blog che avevo su MSDN quando lavoravo in Microsoft, intitolato appunto: Microsoft and Surroundings e consultabile a questo link.(E' stato ormai chiuso definitivamente :-)) Il nuovo blog si chiama Sharepoint and Surroundings, anche perchè mi sono accorto, rileggendo il vecchio blog, che avevo trattato solo di argomenti legati a Sharepoint e Silverlight.


Il mio vecchio blog su MSDN
Il mio vecchio blog su MSDN