Mettere online un sito o un'applicazione
Il Suo VPS Pro serve i Suoi siti e le Sue applicazioni sul loro nome di dominio, in HTTP e in HTTPS. I visitatori arrivano sulle porte 80 e 443 del Suo server, sotto il nome del Suo server; la cifratura HTTPS va da un capo all'altro, fino al Suo server, dove risiede il Suo certificato.
1. Puntare il Suo dominio verso il Suo server
Là dove si gestisce la zona DNS del Suo dominio, crei due record per il nome del Suo server, con gli indirizzi mostrati nella sua scheda, sezione VPS della Sua area clienti:
| Tipo | Nome | Valore |
|---|---|---|
A | app (o @ per il dominio stesso) | l'Indirizzo IPv4 della Sua scheda |
AAAA | app (o @) | l'Indirizzo IPv6 della Sua scheda |
Un nome sotto vps.simafri.cloud funziona già: non c'è nulla da creare.
Quando la zona DNS del Suo dominio è gestita da Simafri, il nostro team crea questi record per Lei: ci scriva. Prima di spostare un sito già online, ci chieda anche di abbassare la durata di validità (TTL) del record: il passaggio si propaga allora in pochi minuti.
Per verificare dal Suo computer:
dig +short A app.mia-azienda.it
dig +short AAAA app.mia-azienda.it
2. Installare il Suo server web
Il Suo server web è in ascolto sulla porta 80 per HTTP e sulla porta 443 per HTTPS. Due scelte comuni:
- Caddy, che ottiene e rinnova da solo il Suo certificato HTTPS;
- Nginx o Apache, con Certbot per il certificato.
Con Caddy
apt install caddy
Poi, in /etc/caddy/Caddyfile, per un sito statico:
app.mia-azienda.it {
root * /var/www/app
file_server
}
oppure per un'applicazione in ascolto sulla porta 3000:
app.mia-azienda.it {
reverse_proxy 127.0.0.1:3000
}
systemctl reload caddy, e il Suo sito risponde in HTTPS: Caddy ha ottenuto il certificato e lo rinnoverà da solo.
Con Nginx e Certbot
apt install nginx certbot python3-certbot-nginx
Crei il sito in /etc/nginx/sites-available/app:
server {
listen 80;
listen [::]:80;
server_name app.mia-azienda.it;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Lo attivi, poi richieda il certificato:
ln -s /etc/nginx/sites-available/app /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d app.mia-azienda.it
Certbot installa il certificato Let's Encrypt, aggiunge l'ascolto sulla porta 443 e programma il suo rinnovo automatico. certbot renew --dry-run verifica che il rinnovo sia pronto.
3. Mantenere in funzione la Sua applicazione
Un'applicazione Node.js, Python, Go o Java che gira in continuo si affida a systemd: si avvia con il server e si riavvia da sola se si ferma. Esempio, in /etc/systemd/system/app.service:
[Unit]
Description=La mia applicazione
After=network.target
[Service]
WorkingDirectory=/srv/app
ExecStart=/usr/bin/node server.js
Restart=always
Environment=NODE_ENV=production
User=www-data
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now app
journalctl -u app -f # seguirne i log
PM2 per Node.js, Gunicorn o Uvicorn per Python, o Docker Compose svolgono lo stesso ruolo, se li preferisce.
4. La Sua base di dati
PostgreSQL, MySQL, MariaDB, Redis o MongoDB si installano sul Suo server con il gestore di pacchetti, oppure dal repository ufficiale dell'editore per l'ultima versione:
apt install postgresql
Mantenga la Sua base di dati in ascolto su localhost: la Sua applicazione la raggiunge sul server stesso. Per amministrarla dal Suo computer, passi da un tunnel SSH:
ssh -p 22101 -L 5432:localhost:5432 root@app.mia-azienda.it
Il Suo strumento (DBeaver, pgAdmin, TablePlus) si collega allora a localhost:5432.
Servire più domini
Il Suo server risponde sotto il suo nome, fissato all'ordine. Per servire un altro dominio o un altro sottodominio sullo stesso VPS Pro, scriva al supporto indicando i nomi da aggiungere: il nostro team li collega al Suo server, poi Lei crea i loro record DNS come nella fase 1 e aggiunge il loro blocco al Suo server web.
Domande frequenti
Il mio sito mostra un errore di certificato.
Verifichi nell'ordine: i Suoi record A e AAAA designano gli indirizzi della Sua scheda (dig), il Suo server web è in ascolto sulle porte 80 e 443 (ss -tlnp), e il certificato copre proprio questo nome (certbot certificates). Il certificato si ottiene una volta che il nome designa il Suo server: rilanci Certbot, o ricarichi Caddy, dopo la propagazione DNS.
Il mio sito non risponde affatto.
Sul server, curl -I http://localhost mostra se il Suo server web risponde. systemctl status nginx (o caddy, o il Suo servizio) e i suoi log dicono perché si è fermato. Descriva al supporto ciò che osserva: l'Assistenza integrale fa la diagnosi con Lei.
Posso installare WordPress, Laravel o Symfony?
Sì: installi PHP-FPM, la Sua base di dati e il Suo server web, poi la Sua applicazione, come su qualsiasi server Linux. L'Assistenza integrale Le indica le impostazioni adatte al Suo progetto, passo dopo passo.