Med caddy webserver får du https eller ingenting. Så la oss se hvordan du kan installere Caddy på Ubuntu og konfigurere den til å tjene webappen din. Vi får våre TLS -sertifikater fra Letsencrypt.
Oppsett
Anta at du har en VPS med IP -adresse: 10.20.30.40 og et FQDN -underdomen.eksempel.com som er en plate peker på denne IP -en.
VPS kjører Ubuntu 18.04 LTS Server Edition og følgende konfigurasjoner gjøres som rotbruker.
Trinn 1: Installere Caddy Web Server
Caddy er skrevet i Go, og kan kjøre som en frittstående kjørbar binær. Imidlertid er det forskjellige plugins som du kan bygge inn i det for spesifikke DNS -servere osv. Vi installerer den vanlige binære uten noen plugin, så det fungerer på tvers av alle tilpasninger.
For å få binærbesøk deres offisielle nedlastingsside og velg alle plugins og telemetri du trenger. Nedenfor vil det være en bash -kommando for å laste ned og plassere Caddy -serveren binær på riktig sted. Som rotbruker, kjør:
$ krøll https: // getcaddy.com | bash -s personlig
Når det er gjort, kan vi finne det binære, ved å løpe:
$ Whereis caddy
Caddy:/usr/local/bin/caddy
Hvis du noen gang trenger å fjerne serveren, eller oppdatere den med nyere kjørbar, vet du nå hvor du skal se.
Trinn 2: Testing av nettstedet ditt
Hvis du ikke har et nettsted, er det bare å opprette en tom mappe og kjøre kommandoene der inne. Du kan få en feil 404 i nettleseren din, men serveroppsettet kan fortsatt testes. Hvis du har et nettsted som krysser til katalogen der webroot på nettstedet ditt ligger på. Som et typisk eksempel vil jeg velge /var/www/mysite Som et eksempel med følgende indeks.HTML lagret inne i den.
/var/www/mysite/indeks.htmlDenne siden er servert av Caddy Server
Dette er et avsnitt.
Dette er nok til å komme oss i gang. Nå i samme katalog som denne indeksen.HTML -side, kjør følgende kommad:
$ caddy
Aktivere personvernfunksjoner ... ferdig.
http: //: 2015
Advarsel: Filbeskrivelsesgrense 1024 er for lav for produksjonsservere. Minst 8192 anbefales. Fix med 'Ulimit -n 8192'.
La Caddy løpe i denne tilstanden.
Du kan gå til serverens offentlige IP på portnummer 2015 for å teste dette: http: // 10.20.30.40: 2015 Forsikre deg om at brannmuren din ikke blokkerer denne porten.
Og du vil se den indeksen.HTML blir automatisk servert. Dette følger den gamle konvensjonen om at ethvert nettsteds første side heter Index som de fleste webservere som Nginx, Apache og til og med Caddy serverer som den første siden, selv når du ikke spesifiserer denne siden ved å bruke /indeks.HTML på slutten av nettadressen.
Trinn 3: Sette opp HTTPS
Nå som du har bekreftet at nettstedet ditt faktisk fungerer med Caddy og kan serveres med det, er det på tide å konfigurere HTTPS. For å gjøre dette kan du bruke kommandolinjegrensesnittet, eller bruke en konfigurasjonsfil som kalles caddyfile. Vi bruker kommandolinjen først.
I samme katalog som nettstedet ditt, kjør følgende kommando:
$ caddy -host underdomen.eksempel.com
## For første gang vil det be deg om e -postadressen din slik at du kan få
Bevisst fornyelsesvarsling fra Letsencrypt
Produksjon:
Aktivering av personvernfunksjoner ..Det er det! Nettstedet ditt er nå i gang. Du kan besøke underdomenet.eksempel.com og det blir automatisk omdirigert til https uten tilpasset portnummer eller andre nyanser.
Det er så enkelt! Du kan CTRL+C for å stoppe serveren, neste gang den bare bruker dette sertifikatet.
Trinn 4: Å skrive din caddyfile
Ovennevnte metode er bra for eksperimentelle brukstilfeller der du bare tester vannet. Men hvis du vil ha en kjørende webserver som bakgrunnsprosess, må du skrive en caddyfile og be webserveren om å bruke denne konfigurasjonen for å kjøre serveren din.
Dette er det enkleste eksemplet for det samme nettstedet vi var vert for ovenfor:
underdomen.eksempel.com
root/var/www/mysite
Rotdirektivet forteller webserveren hvor nettstedet er lokalisert. Du kan ikke komme ut av denne katalogen fra klientsiden. Det er generelt en god idé å plassere caddy -filen din hvor som helst, men inne i denne Webroot. Du kan plassere den i / etc / mappe eller hjemmekatalogen. For eksempel, hvis filen er opprettet på /etc /caddyfile, kan du fortelle serveren å bruke denne konfigurasjonen, ved å kjøre kommandoen:
$ caddy -conf /etc /caddyfile
Det er flere direktiver som du kan bruke til å finjustere serveren din. Du kan aktivere logging, komprimering, omvendt proxy osv. Den offisielle dokumentasjonen er et bra sted å begynne å lete etter direktiver relatert til brukssaken din. Her er et annet eksempel der to nettsteder med to forskjellige domenenavn blir servert:
underdomen.eksempel.com
root/var/www/mysite
underdomen2.eksempel.com
root/var/www/mysite2
Gzip
Logg… /tilgang.Logg
Direktiv GZIP muliggjør komprimering, hvis klienten støtter det. Dette forbedrer ytelsen ettersom mer data kan sendes over båndbredden og samme tidsintervall. Logging hjelper til med å feilsøke og holde oversikt over nettverksaktivitet.
Den største styrken til Caddy Web Server er dens enkle å skrive og lese konfigurasjonsfilen og dens fleksibilitet på tvers av flere plattformer. På grunn av sin rare lisensiering er serveren imidlertid ikke strengt open source. Kildekoden er åpen kildekode, og du kan fullstendig samle den selv og bruke den resulterende kjørbare, men det binære du mottar fra det offisielle nettstedet er ikke ment å bli brukt til kommersielle formål uten riktig lisens.
Dette bringer oss tilbake til spørsmålet om komplikasjoner der vi i stedet for å håndtere bare konfigurasjonsfiler, også må håndtere kildekodesamlingen som beseirer formålet med brukervennlige webserver. Gi oss beskjed hvis du har noen tanker om Caddy, og hvis noen av nettstedene dine kjører på toppen av det.