Zoeken op website

Hoe u een website kunt hosten met HTTPS met Caddy op Linux


Een webserver is een server-side applicatie die is ontworpen om HTTP-verzoeken tussen client en server te verwerken. HTTP is het basis- en veelgebruikte netwerkprotocol.

Apache HTTP Server speelde een belangrijke rol bij het ontwerpen van wat het internet vandaag de dag is. Het alleen al heeft een marktaandeel van 37,3%. Nginx staat op de tweede plaats in de lijst met een marktaandeel van 32,4%. Microsoft IIS en LiteSpeed staan op nummer 3 en 4 met een marktaandeel van respectievelijk 7,8% en 6,9%.

Onlangs kwam ik een webserver tegen met de naam Caddy. Toen ik probeerde te informeren naar de functies ervan en het uitprobeerde om te testen, moet ik zeggen dat het verbazingwekkend was. Een webserver die draagbaar is en geen configuratiebestand nodig heeft. Ik vond het een heel gaaf project en wilde het graag met jullie delen. Hier hebben we Caddy een kans gegeven!

Wat is Caddy?

Caddy is een alternatief voor een apache-webserver dat eenvoudig te configureren en te gebruiken is. Matthew Holt – De projectleider van Caddy beweert dat Caddy een webserver voor algemene doeleinden is, ontworpen is voor mensen en waarschijnlijk de enige in zijn soort is.

Caddy is de enige eerste webserver die automatisch SSL/TLS-certificaten kan verkrijgen en vernieuwen met behulp van Let's Encrypt.

Kenmerken van Caddy

  1. Snelle HTTP-verzoeken via HTTP/2.
  2. Geschikte webserver met de minste configuratie en probleemloze implementatie.
  3. TLS-codering zorgt voor codering tussen communicerende applicaties en gebruikers via internet. U kunt uw eigen sleutels en certificaten gebruiken.
  4. Eenvoudig te implementeren/gebruiken. Slechts één enkel bestand en geen afhankelijkheid van welk platform dan ook.
  5. Geen installatie vereist.
  6. Draagbare uitvoerbare bestanden.
  7. Run-on meerdere CPU's/Cores.
  8. Geavanceerde WebSockets-technologie – interactieve communicatiesessie tussen browser en server.
  9. Server Markdown-documenten direct.
  10. Volledige ondersteuning voor de nieuwste IPv6.
  11. Creëert een logboek in een aangepast formaat.
  12. Serveer FastCGI, Reverse Proxy, Rewrite en Redirects, Clean URL, Gzip-compressie, Directory Browsing, Virtuele Hosts en Headers.
  13. Beschikbaar voor alle bekende platforms: Windows, Linux, BSD, Mac, Android.

Wat maakt caddy anders?

  1. Caddy streeft ernaar het internet te bedienen zoals het zou moeten zijn in het jaar 2020 en niet in traditionele stijl.
  2. Het is niet alleen ontworpen om HTTP-verzoeken te dienen, maar ook voor mensen.
  3. Geladen met de nieuwste functies: HTTP/2, IPv6, Markdown, WebSockets, FastCGI, sjablonen en andere kant-en-klare functies.
  4. Voer de uitvoerbare bestanden uit zonder dat u deze hoeft te installeren.
  5. Gedetailleerde documentatie met de minst technische beschrijving.
  6. Ontwikkeld rekening houdend met de behoefte en het gemak van ontwerpers, ontwikkelaars en bloggers.
  7. Ondersteuning van virtuele host – Definieer zoveel sites als u wilt.
  8. Geschikt voor u – ongeacht of uw site statisch of dynamisch is. Als je een mens bent, is het voor jou.
  9. Je concentreert je op wat je wilt bereiken en niet op hoe je dat moet bereiken.
  10. Beschikbaarheid van ondersteuning voor de meeste platforms – Windows, Linux, Mac, Android, BSD.
  11. Normaal gesproken heeft u één Caddy-bestand per site.
  12. In minder dan 1 minuut opgezet, zelfs als u niet zo computervriendelijk bent.
Omgeving testen

Ik ga het testen op de CentOS-server en op de Debian-server, maar dezelfde instructies werken ook op RHEL en Debian gebaseerde distributies. Voor beide servers ga ik 64-bit uitvoerbare bestanden gebruiken.

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

Installatie van Caddy Web Server onder Linux

Het maakt niet uit welk platform u gebruikt en welk soort architectuur u gebruikt, caddy biedt kant-en-klare binaire pakketten, die kunnen worden geïnstalleerd met behulp van uw standaard pakketbeheerder, zoals weergegeven.

Installeer Caddy in Fedora, RedHat, CentOS

We zullen de nieuwste versie van de Caddy-webserver installeren vanuit de CORP-repository onder Fedora of RHEL/CentOS 8.

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

Gebruik op RHEL/CentOS 7 de volgende opdrachten.

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

Installeer Caddy in Debian en 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

Eenmaal geïnstalleerd, kunt u de caddy-webserver starten, inschakelen en de status van de service controleren met behulp van de volgende systemctl-opdrachten.

systemctl start caddy
systemctl enable caddy
systemctl status caddy

Open nu uw browser en wijs uw browser naar het volgende adres. U zou nu de welkomstpagina van de caddy moeten kunnen zien.

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

Domeinen instellen met Caddy

Om een domein in te stellen, moet u eerst de A/AAAA DNS-records van uw domein naar deze server in uw DNS-configuratiescherm laten verwijzen. Maak vervolgens een documenthoofdmap voor uw website "example.com" onder de map /var/www/html, zoals weergegeven.

mkdir /var/www/html/example.com

Als je SELinux gebruikt, moet je de bestandsbeveiligingscontext voor webinhoud veranderen.

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

Open en bewerk nu het caddy-configuratiebestand op /etc/caddy/Caddyfile.

vim /etc/caddy/Caddyfile

Vervang :80 door uw domeinnaam en wijzig de hoofdmap van de site in /var/www/html/example.com, zoals weergegeven.

Laad de Caddy-service opnieuw om de configuratiewijziging op te slaan.

systemctl reload caddy

Maak nu een willekeurige HTML-pagina (u kunt uw eigen pagina maken) en sla de pagina op in de hoofdmap van het document voor uw website.

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

Voeg de volgende voorbeeld-HTML-code toe aan de indexpagina van uw website.

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

Bezoek nu opnieuw uw site om uw pagina te bekijken.

Als alles correct is geconfigureerd, wordt uw domein bediend via een HTTPS-protocol dat aangeeft dat uw verbinding veilig is.

Conclusie

Als u nieuw bent en een webserver wilt opzetten zonder uw handen vuil te maken aan de configuratie, dan is deze tool iets voor u. Zelfs als u een ervaren gebruiker bent die een directe en eenvoudige webserver nodig heeft, is Caddy het proberen waard. Met een beetje configuratie kunt u ook maprechten instellen, authenticatie, foutpagina's, Gzip, HTTP-omleiding en andere beheren, als u een complexere en geavanceerdere webserver moet opzetten.

Gebruik Caddy niet als vervanging voor Apache of Nginx. Caddy is niet ontworpen voor een productieomgeving met veel verkeer. Het is ontworpen voor een snelle webserver-installatie wanneer het om snelheid en betrouwbaarheid gaat.

Referenties

Volledige gebruikershandleiding/Volledige documentatie van Caddy Web Server

We hebben deze documentatie meegebracht die gericht is op een snelle beoordeling en installatie-instructies met waar nodig afbeeldingen. Als u voor- en nadelen van het project of een suggestie tegenkomt, kunt u deze aan ons doorgeven in onze commentaarsectie.

Voor mij is dit te jonge project nog steeds feilloos en lijkt het krachtig en veelbelovend. Het grootste pluspunt dat ik zie is dat caddy zijn configuratiebestand niet overal mee naartoe hoeft te nemen. Het is bedoeld om het beste van Nginx, Lighttpd, vagrant en Websocketd te bieden. Dat is allemaal van mijn kant. Blijf verbonden met Tecmint. Een pluim