Tutti i file di configurazione di Laravel sono posizionati all’interno della cartella app/config. Ogni file contiene una categoria di opzioni. Ad esempio esite un file per il database, uno per gestire l’autenticazione degli utenti, uno per la cache etc…

larave-files-configurazione

Laravel consente di utlizzare configurazioni alternative in base all’ambiante in cui stiamo lavorando. Ad esempio la configurazione di quando lavoriamo in locale sarà diversa di quella dell’applicazione in produzione.
Per creare configurazioni alternative è sufficiente creare una cartella all’interno di app/config e un file per il tipo di opzione che vogliamo modificare. Andreamo così a creare solo i file che ci interessano e che avranno la precedenza su quelli predefiniti. Non è necessario specificare dunque ogni opzione.
In app/config possiamo notache che è già presente una sottocartella chiamata local con alcuni file. L’ambiente ‘testing’ è invece riservato allo unit testing.

configurazioni-locali

Di default l’ambiente è impostato per essere in produzione. Per specificare quale ambiente stiamo utilizzando dobbiamo modificare il file bootstrap/start.php
In questo file possiamo trovare la chiamata $app->detectEnvironment a cui è passato un array utilizzato per determinare l’ambiente corrente.

$env = $app->detectEnvironment(array(

	'local' => array('nome-computer'),

));

Per derminare il nome del nostro computer se stiamo lavorando con un mac o con una distribuzione linux, basta digitare il comando hostname nel terminale.

Accedere all’ambiente utilizzato

Per conoscere quale ambiente stiamo utilizzado

echo App::environment();

 

Proteggere i dati di configurazione

Nella documentazione ufficiale di Laravel è consigliato di tenere dati sensibili come password, database, all’esterno dei file di configurazione.
Laravel dispone di un sistema di “dot file” in cui inserire tali valori che saranno disponibili poi in variabili superglobali.

Affinchè questa tecnica funzioni è necessario aver impostato l’ambiente di sviluppo come spiegato nel paragrafo precedente. Nel nostro stiamo lavorando in locale.

Creaiamo il file .env.local.php nella root dell’applicazione, allo stesso livello del file composer.json.

Dopodichè è necessario aggiungere .env.local.php all’interno del file .gitignore, in questo nel caso si lavori in team col un software di controllo di versione git, ogni sviluppatore potrà avere un proprio ambiente di sviluppo locale.

A questo punto inseriamo i dati in un array

<?php

return array(

        'TEST_ISW_KEY' => 'valore',
);

Faremo riferimento a questi valori nei file di configurazione in questo modo

'key' => $_ENV['TEST_ISW_KEY']

  inStileWeb.com
blog comments powered by Disqus