Kaip priglobti svetainę naudojant HTTPS naudojant „Caddy“ sistemoje „Linux“.


Žiniatinklio serveris yra serverio programa, skirta HTTP užklausoms tarp kliento ir serverio apdoroti. HTTP yra pagrindinis ir labai plačiai naudojamas tinklo protokolas.

Apache HTTP serveris suvaidino svarbų vaidmenį kuriant tai, kas šiandien yra žiniatinklis. Vien jo rinkos dalis yra 37,3 %. Nginx užima antrą vietą sąraše ir užima 32,4 % rinkos dalį. Microsoft IIS ir LiteSpeed užima 3 ir 4 vietas, kurių rinkos dalis yra atitinkamai 7,8 % ir 6,9 %.

Neseniai aptikau žiniatinklio serverį, pavadintą Caddy. Kai bandžiau pasiteirauti apie jo funkcijas ir panaudojau jį bandymams, turiu pasakyti, kad tai nuostabu. Žiniatinklio serveris, kuris yra nešiojamas ir kuriam nereikia jokio konfigūracijos failo. Maniau, kad tai labai šaunus projektas ir norėjau juo pasidalinti su jumis. Išbandėme Caddy!

Kas yra Caddy?

Caddy yra „apache“ žiniatinklio serverio alternatyva, kurią lengva konfigūruoti ir naudoti. Matthew Holt – „Caddy“ projekto vadovas teigia, kad „Caddy“ yra bendros paskirties žiniatinklio serveris, jis yra sukurtas žmonėms ir tikriausiai yra vienintelis tokio tipo serveris.

Caddy yra vienintelis pirmasis žiniatinklio serveris, galintis automatiškai įsigyti ir atnaujinti SSL/TLS sertifikatus, naudodamas Šifruokime.

„Caddy“ savybės

  1. Greitos HTTP užklausos naudojant HTTP/2.
  2. Pajėgus žiniatinklio serveris su mažiausia konfigūracija ir be rūpesčių diegimu.
  3. TLS šifravimas užtikrina šifravimą tarp komunikuojančių programų ir vartotojų internetu. Galite naudoti savo raktus ir sertifikatus.
  4. Lengva įdiegti/naudoti. Tik vienas failas ir jokios priklausomybės nuo jokios platformos.
  5. Diegimo nereikia.
  6. Nešiojami vykdomieji failai.
  7. Veikia keliuose CPU/branduoliuose.
  8. Išplėstinė WebSockets technologija – interaktyvi komunikacijos sesija tarp naršyklės ir serverio.
  9. Serverio žymėjimo dokumentai skrydžio metu.
  10. Visiškas naujausio IPv6 palaikymas.
  11. Sukuria tinkinto formato žurnalą.
  12. Teikti FastCGI, atvirkštinį tarpinį serverį, perrašymą ir peradresavimą, švarų URL, Gzip glaudinimą, katalogų naršymą, virtualius pagrindinius kompiuterius ir antraštes.
  13. Galima naudoti visoms žinomoms platformoms – Windows, Linux, BSD, Mac, Android.

Kuo Caddy skiriasi?

  1. „Caddy“ siekia aptarnauti žiniatinklį taip, kaip turėtų būti 2020 m., o ne tradiciniu stiliumi.
  2. Jis skirtas ne tik HTTP užklausoms teikti, bet ir žmonėms.
  3. Pakrauta su naujausiomis funkcijomis – HTTP/2, IPv6, Markdown, WebSockets, FastCGI, šablonais ir kitomis nebenaudojamomis funkcijomis.
  4. Paleiskite vykdomuosius failus neįdiegdami.
  5. Išsami dokumentacija su mažiausiu techniniu aprašymu.
  6. Sukurta atsižvelgiant į dizainerių, kūrėjų ir tinklaraštininkų poreikį ir lengvumą.
  7. Virtualios prieglobos palaikymas – nustatykite tiek svetainių, kiek norite.
  8. Tinka jums – nesvarbu, ar jūsų svetainė statiška, ar dinamiška. Jei esi žmogus, tai tau.
  9. Jūs sutelkiate dėmesį į tai, ką pasiekti, o ne į tai, kaip tai pasiekti.
  10. Daugumos platformų – Windows, Linux, Mac, Android, BSD – palaikymas.
  11. Paprastai vienoje svetainėje turite vieną Caddy failą.
  12. Nustatykite per mažiau nei 1 minutę, net jei nesate labai draugiškas kompiuteriui.
Testavimo aplinka

Bandysiu jį CentOS serveryje, taip pat Debian serveryje, bet tos pačios instrukcijos taip pat veikia RHEL ir Debian pagrįsti paskirstymai. Abiejuose serveriuose naudosiu 64 bitų vykdomuosius failus.

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

„Caddy Web Server“ diegimas „Linux“.

Nesvarbu, kokią platformą ir kokią architektūrą naudojate, „caddy“ teikia paruoštus naudoti dvejetainius paketus, kuriuos galima įdiegti naudojant numatytąjį paketų tvarkyklę, kaip parodyta.

Įdiekite „Caddy“ „Fedora“, „RedHat“, „CentOS“.

Įdiegsime naujausią „Caddy“ žiniatinklio serverio versiją iš CORP saugyklos, esančios Fedora arba RHEL/CentOS 8.

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

Naudodami RHEL/CentOS 7 naudokite šias komandas.

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

Įdiekite „Caddy“ „Debian“ ir „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

Įdiegę caddy žiniatinklio serverį, galite paleisti, įjungti ir patikrinti paslaugos būseną naudodami šias systemctl komandas.

systemctl start caddy
systemctl enable caddy
systemctl status caddy

Dabar atidarykite naršyklę ir nukreipkite naršyklę toliau nurodytu adresu ir turėtumėte matyti „caddy“ pasveikinimo puslapį.

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

Domenų nustatymas naudojant Caddy

Norėdami nustatyti domeną, pirmiausia turite nukreipti savo domeno A/AAAA DNS įrašus į šį serverį savo DNS valdymo skydelyje. Tada sukurkite savo svetainės "example.com" dokumento šakninį katalogą aplanke /var/www/html, kaip parodyta.

mkdir /var/www/html/example.com

Jei naudojate SELinux, turite pakeisti žiniatinklio turinio failų saugos kontekstą.

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

Dabar atidarykite ir redaguokite „caddy“ konfigūracijos failą adresu /etc/caddy/Caddyfile.

vim /etc/caddy/Caddyfile

Pakeiskite :80 savo domeno pavadinimu ir pakeiskite svetainės šaknį į /var/www/html/example.com, kaip parodyta.

Iš naujo įkelkite Caddy paslaugą, kad išsaugotumėte konfigūracijos pakeitimą.

systemctl reload caddy

Dabar sukurkite bet kurį HTML puslapį (galite sukurti savo) ir išsaugokite puslapį savo svetainės dokumento šakniniame kataloge.

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

Pridėkite šį pavyzdinį HTML kodą į savo svetainės rodyklės puslapį.

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

Dabar dar kartą apsilankykite svetainėje, kad pamatytumėte savo puslapį.

Jei viskas teisingai sukonfigūruota, jūsų domenas bus aptarnaujamas HTTPS protokolu, nurodant, kad jūsų ryšys yra saugus.

Išvada

Jei esate naujokas ir norite nustatyti žiniatinklio serverį nesutepdami konfigūracijos, šis įrankis skirtas jums. Net jei esate patyręs vartotojas, kuriam reikia greito ir paprasto žiniatinklio serverio „Caddy“, verta pabandyti. Nedidelę konfigūraciją taip pat galite nustatyti aplanko leidimą, valdyti autentifikavimą, klaidų puslapius, Gzip, HTTP peradresavimą ir kitus, jei reikia nustatyti sudėtingesnį ir pažangesnį žiniatinklio serverį.

Nenaudokite „Caddy“ kaip „Apache“ ar „Nginx“ pakaitalo. „Caddy“ nėra sukurtas dirbti didelio srauto gamybos aplinkoje. Jis skirtas greitai nustatyti žiniatinklio serverį, kai jums rūpi greitis ir patikimumas.

Nuorodos

Išsamus „Caddy Web Server“ vartotojo vadovas/visa dokumentacija

Pateikėme šią dokumentaciją, kurios tikslas – greitai peržiūrėti ir įdiegti instrukcijas su vaizdais, kai to reikia. Jei susidursite su projekto privalumais/trūkumais ar pasiūlymu, galite tai pateikti mūsų komentarų skiltyje.

Man šis projektas per jaunas, vis dar veikia nepriekaištingai ir atrodo galingas bei daug žadantis. Didžiausias pliusas, kurį matau, yra tai, kad „Caddy“ nereikia visur nešiotis savo konfigūracijos failo. Juo siekiama pateikti geriausias Nginx, Lighttpd, vagrant ir Websocketd. Tai viskas iš mano pusės. Palaikykite ryšį su Tecmint. Pagarba