Directus su Lighttpd

Proviamo Directus su Lighttpd, un cms che vola!

Azzardiamo, Directus su Lighttpd per api veloci!

Directus, il cms Headless

Directus è il cms headless open source di cui ho parlato nell’articolo del 15 gennaio. E’ in continua evoluzione, funzionale e grafica. Ed è stato pensato per funzionare su application server come Apache o Nginx.

Lighttpd, vola leggero!

Lighttpd è un web server il cui pregio maggiore è il piccolo ingombro di memoria e la grande velocità. Quindi potrebbe essere una soluzione molto interessante per il nostro CMS Directus!

Perché questo azzardo?

Semplicemente perché avevo a disposizione una macchina Freebsd con installato Lighttpd. Ed ho pensato, se funziona con Apache, con Nginx, perché non dovrebbe funzionare anche con lighttpd?

Installazione di Directus

per installare Directus su Lighttpd ho seguito le stesse istruzioni per la classica installazione su Apache ( cambiando qualche comando essendo su BSD e non su Ubuntu/debian). Ho quindi installato Maria DB, Composer e poi scaricato Directus.

L’installazione del CMS è andata bene, almeno fino alla gestione del “mod_rewrite“. Questo punto è sempre cruciale!

Lighttpd è la sua configurazione

Eccoci al punto, per permettere alle API di Directus di funzionare correttamente ed allo stesso tempo al CMS di agire con le sue configurazioni ho dovuto sperimentare un po’…  ma alla fine qualche soluzione l’ho trovata 😉

Per gestire il mod_rewrite ho inserito questo codice, in parte recuperato da quello per i permalink di WordPress:

url.rewrite = (

# Excludes the admin, includes, wp-content etc. -> LO STESSO USATO PER WP
"^/(wp-admin|wp-includes|wp-content|gallery2)/(.*)" => "$0",

"^/(directus/api)/(.*)" => "directus/api/api.php?run_api_router=1 last"
)
url.rewrite-if-not-file += ( "^/(directus/.*)\.(css|js|jpg|png|gif)$" => "$0",
"^/directus/(.*)$" => "/directus/index.php/$1" )
}

Poi, per permettere alle altre applicazioni di invocare le api, ho dovuto aggiungere:

"mod_setenv", #before mod_status, very important!

ai server.modules.

Poi ho dovuto impostare i metodi di accesso:

setenv.add-response-header = (
"Access-Control-Allow-Origin" => "*",
"Access-Control-Expose-Headers" => "WWW-Authenticate",
"Access-Control-Allow-Headers" => "Authorization",
"Access-Control-Allow-Methods" => "POST, GET, OPTIONS"
)

Risultato…

Directus su Lighttpd funziona? Diciamo di sì, al 80%. Alcune funzionalità sono inibite, come quelle di upload file e, in alcune fasi, quelle di aggiunta utenti. Probabilmente alcune configurazioni sono da rivedere e migliorare ma la strada è quella giusta!

Le funzionalità di aggiunta tabelle, scrittura e lettura, API sono funzionanti al 100% e ad altissima velocità!

Non essendo un vero e proprio esperto di Lighttpd è stato un risultato più che buono!

0 comments on “Proviamo Directus su Lighttpd, un cms che vola!Add yours →

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *