Ricerca nel sito web

Come ospitare un sito Web con HTTPS utilizzando Caddy su Linux


Un server Web è un'applicazione lato server progettata per elaborare le richieste HTTP tra client e server. HTTP è il protocollo di rete base e molto diffuso.

Apache HTTP Server ha svolto un ruolo importante nel progettare ciò che è il web oggi. Da solo detiene una quota di mercato del 37,3%. Nginx è al secondo posto con una quota di mercato del 32,4%. Microsoft IIS e LiteSpeed arrivano ai numeri 3 e 4 con una quota di mercato rispettivamente del 7,8% e del 6,9%.

Recentemente mi sono imbattuto in un server web chiamato Caddy. Quando ho provato a informarmi sulle sue funzionalità e l'ho utilizzato per i test, devo dire che è sorprendente. Un server web portatile e che non necessita di alcun file di configurazione. Ho pensato che fosse un progetto davvero interessante e volevo condividerlo con voi. Qui abbiamo provato Caddy!

Cos'è Caddy?

Caddy è un'alternativa al server web Apache facile da configurare e utilizzare. Matthew Holt – Il leader del progetto Caddy afferma che Caddy è un server web generico, afferma di essere progettato per gli esseri umani ed è probabilmente l'unico nel suo genere.

Caddy è l'unico primo server web in grado di acquisire e rinnovare automaticamente i certificati SSL/TLS utilizzando Let's Encrypt.

Caratteristiche di Caddie

  1. Richieste HTTP veloci utilizzando HTTP/2.
  2. Server Web capace con configurazione minima e distribuzione senza problemi.
  3. La crittografia TLS garantisce la crittografia tra le applicazioni comunicanti e gli utenti su Internet. Puoi utilizzare le tue chiavi e i tuoi certificati.
  4. Facile da implementare/utilizzare. Un solo file e nessuna dipendenza da nessuna piattaforma.
  5. Nessuna installazione richiesta.
  6. Eseguibili portatili.
  7. Esegui su più CPU/core.
  8. Tecnologia avanzata WebSocket: sessione di comunicazione interattiva tra browser e server.
  9. Documenti Server Markdown al volo.
  10. Supporto completo per l'ultimo IPv6.
  11. Crea un registro in un formato personalizzato.
  12. Fornisce FastCGI, proxy inverso, riscrittura e reindirizzamenti, URL pulito, compressione Gzip, esplorazione di directory, host virtuali e intestazioni.
  13. Disponibile per tutte le piattaforme conosciute: Windows, Linux, BSD, Mac, Android.

Cosa rende il caddy diverso?

  1. Caddy mira a servire il web come dovrebbe essere nel 2020 e non in stile tradizionale.
  2. È progettato non solo per servire le richieste HTTP ma anche per gli esseri umani.
  3. Caricato con le funzionalità più recenti: HTTP/2, IPv6, Markdown, WebSocket, FastCGI, modelli e altre funzionalità predefinite.
  4. Esegui gli eseguibili senza la necessità di installarlo.
  5. Documentazione dettagliata con la descrizione meno tecnica.
  6. Sviluppato tenendo presente le necessità e la facilità di designer, sviluppatori e blogger.
  7. Supporta host virtuale: definisci tutti i siti che desideri.
  8. Adatto a te, non importa se il tuo sito è statico o dinamico. Se sei umano è per te.
  9. Ti concentri su cosa ottenere e non su come ottenerlo.
  10. Disponibilità di supporto per la maggior parte delle piattaforme: Windows, Linux, Mac, Android, BSD.
  11. Di solito, hai un file Caddy per sito.
  12. Configurazione in meno di 1 minuto, anche se non sei molto esperto di computer.
Ambiente di test

Lo proverò sul server CentOS, così come sul server Debian, ma le stesse istruzioni funzionano anche su RHEL e Debian distribuzioni basate. Per entrambi i server utilizzerò eseguibili a 64 bit.

Operating Systems: CentOS 8 and Debian 10 Buster
Caddy Version: v2.0.0

Installazione di Caddy Web Server in Linux

Indipendentemente dalla piattaforma e dal tipo di architettura che utilizzi, caddy fornisce pacchetti binari pronti all'uso, che possono essere installati utilizzando il gestore pacchetti predefinito come mostrato.

Installa Caddy in Fedora, RedHat, CentOS

Installeremo l'ultima versione del server web Caddy dal repository CORP in Fedora o RHEL/CentOS 8.

dnf install 'dnf-command(copr)'
dnf copr enable @caddy/caddy
dnf install caddy

Su RHEL/CentOS 7 utilizza i seguenti comandi.

yum install yum-plugin-copr
yum copr enable @caddy/caddy
yum install caddy

Installa Caddy in Debian e Ubuntu

echo "deb [trusted=yes] https://apt.fury.io/caddy/ /" \
    | sudo tee -a /etc/apt/sources.list.d/caddy-fury.list
sudo apt update
sudo apt install caddy

Una volta installato il server web caddy, puoi avviare, abilitare e controllare lo stato del servizio utilizzando i seguenti comandi systemctl.

systemctl start caddy
systemctl enable caddy
systemctl status caddy

Ora apri il browser e punta il browser al seguente indirizzo e dovresti essere in grado di vedere la pagina di benvenuto del caddy.

http://Server-IP
OR
http://yourdomain.com

Configurazione di domini con Caddy

Per impostare un dominio, devi innanzitutto indirizzare i record DNS A/AAAA del tuo dominio su questo server nel tuo pannello di controllo DNS. Successivamente, crea una directory root dei documenti per il tuo sito web "example.com" nella cartella /var/www/html come mostrato.

mkdir /var/www/html/example.com

Se utilizzi SELinux, devi modificare il contesto di sicurezza dei file per il contenuto web.

chcon -t httpd_sys_content_t /var/www/html/example.com -R
chcon -t httpd_sys_rw_content_t /var/www/html/example.com -R

Ora apri e modifica il file di configurazione del caddy in /etc/caddy/Caddyfile.

vim /etc/caddy/Caddyfile

Sostituisci :80 con il tuo nome di dominio e modifica la radice del sito in /var/www/html/example.com come mostrato.

Ricarica il servizio Caddy per salvare la modifica della configurazione.

systemctl reload caddy

Ora crea qualsiasi pagina HTML (puoi crearne una tua) e salva la pagina nella directory root del documento per il tuo sito web.

touch /var/www/html/example.com/index.html

Aggiungi il seguente codice HTML di esempio alla pagina indice del tuo sito web.

echo '<!doctype html><head><title>Caddy Test Page at TecMint</title></head><body><h1>Hello, World!</h1></body></html>' | sudo tee /var/www/html/index.html

Ora visita di nuovo il tuo sito per vedere la tua pagina.

Se tutto è configurato correttamente, il tuo dominio verrà servito tramite un protocollo HTTPS che indica che la tua connessione è sicura.

Conclusione

Se sei un principiante e vuoi configurare un server web senza sporcarti le mani con la configurazione, questo strumento fa per te. Anche se sei un utente esperto che ha bisogno di un server web semplice e istantaneo, vale la pena provare Caddy. Con un po' di configurazione, puoi anche impostare i permessi delle cartelle, controllare l'autenticazione, le pagine di errore, Gzip, reindirizzamento HTTP e altro, se hai bisogno di configurare un server web più complesso e avanzato.

Non prendere Caddy come sostituto di Apache o Nginx. Caddy non è progettato per gestire ambienti di produzione ad alto traffico. È progettato per una configurazione rapida del server web quando la tua preoccupazione è la velocità e l'affidabilità.

Riferimenti

Guida per l'utente completa/Documentazione completa di Caddy Web Server

Abbiamo portato questa documentazione che mira a una rapida revisione e istruzioni di installazione con immagini ove necessario. Se trovi pro/contro del progetto o qualche suggerimento, puoi comunicarcelo nella nostra sezione commenti.

Per me questo progetto è troppo giovane e funziona ancora perfettamente e sembra potente e promettente. Il più grande vantaggio che vedo è che caddy non ha bisogno di portare il suo file di configurazione ovunque. Mira a fornire il meglio di Nginx, Lighttpd, vagrant e Websocketd. Questo è tutto da parte mia. Rimani connesso a Tecmint. Complimenti