Pagine Statiche
Pagina HTML Statica
Creiamo una directory per gli esercizi:
mkdir ~/unit
Creiamo anche una directory di share, che sarà visibile dal contenitore Unit. Questa directory apparterrà all'utente corrente e avrà permessi di lettura pubblici.
sudo mkdir /www
sudo chown $USER:$USER /www
chmod 755 /www
Creiamo una directory e una pagina HTML statica sulla directory condivisa:
mkdir /www/data
vim /www/data/index.html
<!DOCTYPE html>
<html>
<head>
<title>Welcome to NGINX Unit!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to NGINX Unit!</h1>
<p>If you see this page, the NGINX Unit web server is successfully
installed and working. Further configuration is required.
</p>
<p>For online documentation and support, please refer to
<a href="https://unit.nginx.org/">unit.nginx.org</a>.<br/>
</p>
<p><em>Thank you for using NGINX Unit.</em></p>
</body>
</html>
Mella directory di esercizio, creiamo uno snippet di codice in JSON:
cd ~/unit
vim json.snippet
{
"listeners": {
"*:8081": {
"pass": "routes"
}
},
"routes": [
{
"action": {
"share": "/www/data$uri"
}
}
]
}
Questo è un segmento di configurazione di Unit.
Viene creato un listener, che ascolta su un certo indirizzo IP e porta. Quando arriva un messaggio a questo listener, lo passa ad una route. La route unica configurata serve una pagina statica condivisa sotto /www/data
, aggiungendo al percorso la parte uri, ovvero il path della richiesta.
P.es. se la richiesta è a *:8080/blob.html
, viene servita la pagina /blob.html
. L'asterisco (*
) rappresenta qualsiasi indirizzo IP.
Il default del route /
è come di solito /index.html
.
Sottomettiamo lo snippet a Unit:
curl -X PUT --data-binary @json.snippet 192.168.100.10:8080/config
Apriamo un browser a 192.168.100.10:8081
e vedremo la pagina.
Tutte le pagine web scritte sotto /www/data
sono ora visibili sotto 192.168.100.10:8081
senza ulteriori modifiche di configurazione. E' l'equivalente di un sito virtuale.