Luca Annuiti

il mio Blog personale su Virtualizzazione, SharePoint, Programmazione e ...

OSX: creare un'immagine disco criptata mediante Utility Disco

Creare un'immagine disco criptata (protetta da password) per salvare documenti e file importanti è molto semplice utilizzando direttamente gli strumenti messi a disposizione da OSX:

  • Aprire Utility Disco (Disk Utility - /Applications/Utilities/)
  • Selezione dal menù File -> Nuova Immagine -> Immagine Vuota (cmd+N)
  • Inserire il nome dell'immagine disco in "Salva con nome" e selezionare la posizione dove volete che venga salvata
  • Inserire la dimensione che dovrà avere l'immagine (100MB è la dimensione impostata come default)
  • Utilizzare il file system predefinito - Mac OS X Esteso (Journaled) - oppure selezionarne uno differente
  • Selezionare il tipo di codifica: 256-bit AES per Mac OS X v10.5 o superiori, altrimenti 128-bit AES; verrà richiesta la password da utilizzare (attenzione: in caso di perdita della password i dati contenuti nell'immagine non posso essere recuperati
  • Selezionare il Formato immagine: è possibile selezionare "Immagine disco Sparse", altrimenti è possibile selezionare "Immagine disco lettura/scrittura".
  • Cliccare su Salva
A questo punto la nostra immagine è pronta; per mantenere un livello elevato di sicurezza, è preferibile non salvare la password nel portachiavi all'apertura dell'immagine.

Umbraco: utilizzare i Tag

Questo righe di codice (Razor) permettono di visualizzare tutti i Tag utilizzati:

var tagList = Umbraco.TagQuery.GetAllContentTags().OrderBy(t => t.Text);

foreach (var tag in tagList)
{
<a href="#=">@tag.Text (@tag.NodeCount)</a>
}

Con queste righe invece è possibile filtrare i nodi in base ai tag utilizzati:

var pages = CurrentPage.Children.Where("Visible");   
var allNodesWithTags = pages.Where("nmyField != \"\"");

List<string> taglist = new List<string>();
foreach (var node in allNodesWithTags)
{
taglist.AddRange(node.
nmyField.ToString().Split(','));
}

taglist = taglist.OrderBy(q => q).ToList();

@foreach (string tag in taglist.Distinct())
{
<li><a href="#?tag=@tag">@tag</a></li>
}

Umbraco: loggare eventi custom

Le funzioni da utilizzare per inserire nei log di umbraco messaggi custom sono le seguenti:

LogHelper.Info(System.Type, System.Func)
LogHelper.Error(System.Type, string, System.Exception)

E' necessario include la direttiva @using Umbraco.Core.Logging nella pagina o codice sorgente.


@using Umbraco.Core.Logging

@{ // Inserimento di informazioni "custom" LogHelper.Info(this.GetType(), "Message"); //Inserimento di errori "custom" LogHelper.Error(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "messagge2", ex); }


Umbraco: specificare la durata della cache per i contenuti statici

E' possibile specificare la durata della cache per contentuti statici specificando il percorso della cartella semplicemente aggiungende alla fine del file web.config (prima della chiurusa </configuration>) queste righe:

<location path="media">
    <system.webServer>
        <staticContent>
            <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="7.00:00:00" />
        </staticContent>
    </system.webServer>
</location>

Il parametro path è il nome della cartella, quindi è possibile replicare l'impostazione per differenti percorsi.
Il valore cacheControlMaxAge è espresso in giorni.ore.minuti.secondi.