Veebiserveri seadistamine ja veebi hostimine GNU / Linuxis

Veebi URL

Kui olete kunagi mõelnud, kuidas mõned hostimisteenused Võrgus olemasolevad veebisaidid või mis on veebiserver ja kuidas see toimib, sh millised on mõne veebisaidi URL-is kuvatud ribad, kuidas klient saab veebiga kaugühenduse luua jne. See artikkel teeb selle teile selgeks. Ma õpetan teile mitte ainult selle mõisteid, mis server on, vaid saate ka teada, kuidas oma lihtsa õpetuse abil samm-sammult oma veebiserverit luua.

Täna kasutame kõik igasuguseid kaugteenuseid, ka kasvavat pilvandmetöötlust, kuid kui on mõni teenus, mis paistab silma üle teiste, võib-olla on see just see, mida nad pakuvad veebiserverid, kuna on palju veebisaite, mida me igapäevaselt külastame, et lugeda oma lemmikuudiseid, vaadata veebiliidestelt saadetud e-kirju, mis pakuvad mõnda teenust, näiteks GMail, sooritavad tehinguid, töötavad, teevad veebist oste jne. Keegi ei pääse nendest teenustest, eks? Kuid paljude selle kasutajate jaoks pole nad siiani teada, mis nende taga peitub ...

Mis on server?

Serverifarm

Mõned kasutajad arvavad seda server on midagi erilist, midagi hoopis muud kui see tegelikult on. Kuid lihtsas keeles öeldes pole server midagi muud kui selline arvuti, nagu meil meie majas võib olla, ainult et see teeb kliendina tegutsemise asemel seda serverina, see tähendab teenuse pakkumist. Võite arvata, et sel juhul on need pildid, mida serverite ilmumisel teleris või muus meediumis näeme, nii haruldased ...

Noh, sellised pildid, nagu ma siia lisasin, on pildid serverifarmid. See on nimi mitmele arvutiklastrile, mis töötavad koos ühe serverina. Pidage meeles, et teenused, mida need serverid tavaliselt pakuvad, on mõeldud sadadele, tuhandetele või miljonitele kasutajatele, kes tegutsevad klientidena oma arvutis, nutitelefonis, tahvelarvutis, nutiteleris jne. Seetõttu on nende käsitsemisvõimalused palju suuremad kui koduarvutil.

Peate lihtsalt mõtlema sellistele teenustele nagu Twitter, kui palju miljoneid kasutajaid sellel sotsiaalvõrgustikul on, mitu faili ja sõnumit sekundis edastatakse. Kui järele mõelda, on see a suur hulk andmeidSeetõttu ei kehti see sellise ühenduse puhul nagu meil kodus on ja tavaline arvuti. Vaja on väga kiireid ühendusi, et kõigi nende kasutajate juurdepääs ei viivitaks, ja annaks sellele vajaliku võimsuse, et nad saaksid kogu seda teavet majutada.

Selle all mõtlen ma seda seda teenust kasutatakse kümneid või sadu "arvuteid" nagu need, mida saame kasutada kodus ja mis asuvad riiulitega kappides. Kuid sisuliselt pole igaüks neist kaugel lauaarvutist, nagu meil kodus on. Võib-olla on mõnel spetsiaalsed mikroprotsessorid nagu AMD EPYC, Intel Xeon jne, võib-olla on neil ka mitu kõvaketast, mis on konfigureeritud RAID-iga, et vältida, et kui mõni neist ebaõnnestub, siis teave kaob, kuid nagu ma ütlen, pidage meeles, et nad on sellised arvutid, mida te praegu haldate, ja ma ütlen teile seda, sest nüüd selgitan teile, kuidas muuta oma arvuti tagasihoidlikuks serveriks ...

Muidugi need servereid on mitut tüüpi, on neid, kes pakuvad pilveteenuseid, näiteks salvestusruumi, on neid, mis pakuvad e-posti teenuseid, veebiservereid, samuti mõned, mis pakuvad lihtsalt selliseid teenuseid nagu DNS, NTP, DHCP, LDAP jne, st kõik viimased on väga vajalik ja kasutage neid kindlasti igapäevaselt, ilma et sellest isegi aru saaksite, kuna need on teenused, mida mõni Interneti-teenuse pakkuja (Interneti-teenuse pakkuja) või Interneti-teenuse pakkuja meile pakub.

Mis on veebileht?

Veebisait erinevates seadmetes

Oleme varem maininud, et mõned veebiserverid pakuvad hostimist või hostimist veebilehti. Veebileht on elektroonilise või digitaalse teabe kogum (HTML, PHP, CSS, ...), mis võib sisaldada ainult teksti või ka muud sisu, näiteks veebirakendusi, mis on kirjutatud teatud kindlates programmeerimiskeeltes või skriptides (Perl, JavaScript , Ruby koos raamistiku RoR või Ruby on Rails, PHP jms), multimeediumisisuga (pildid, videod, helid jne) ning linkidega, mis tavaliselt suunavad teid samale veebilehele mõnda teise kohta või teise .

Ja selleks, et see oleks võimalik, on meil veebiserverid, mis neid majutavad, see tähendab, et see salvestab kõik need andmed oma kõvakettale ja ka rea ​​võrguprotokolle nagu HTTP (HyperText Transfer Protocol) ja HTTPS (HTTP koos SSL / TLS-sertifikaadi turbega). Tarkvara hoolitseb selle eest, nagu me õpetame teile hiljem, st rakendama kliendile kahesuunalist ühendust ja et ta saab navigeerida hüpertekstisisus, st vahenditega, mida jagada, linkida ja nendega suhelda. teave, mis on kohandatud WWW-le (World Wide Web).

Kuidas see toimib?

Kliendi-serveri ühendus

Noh, me juba teame, mis on veeb ja veebiserver, seda on seletatud minu omal moel ja lihtsa keelega, et enam-vähem kõik saaksid sellest aru, ka need, kellel pole selle tehnoloogia kohta teadmisi. Ja nüüd jätkan selle jaotisega, milles püüan selgeks teha selle kliendi-serveri süsteemi töö. Kuid selleks eristan kõigepealt neid kahte:

  • Klient: klient on kasutaja, kes pääseb veebisaidile oma seadmest, olgu see siis sülearvuti, lauaarvuti, tahvelarvuti, nutitelefon jne. Juurdepääsuks vajate ainult Interneti-ühendust ja veebibrauserit, mis on kliendi poolel väga oluline tarkvara, mis vastutab kogu selle veebisisu kasutajasõbraliku kuvamise eest ja võimaldab kasutajal sellega suhelda. Ja selleks vajame ainult veebilehe aadressi või IP-i ... ehkki võite arvata, et juurdepääsuks pole seda alati vaja, kuna on olemas otsingumootoreid (nt: Google), mis märksõnade kaudu võimaldavad meile näidata neid indekseeritud veebisaite ja teil on õigus.
  • Server: Nagu me selgitasime, sisaldab see kõiki andmeid ja tarkvara, mis toimib serverina, see tähendab, et see võimaldab kliendil luua ühenduse, et teha kõike, mida ta vajab. Veebiserveri puhul on selleks näiteks Apache, Lighttpd jne.

Tahaksin välja tuua veel midagi ja see on see, et nagu te hästi teate, IP-aadress See tuvastab võrku ühendatud masina, antud juhul on see veebiserveri IP. Seal on mõned sellised teenused mis näitavad teile teie lemmiklehe IP-d, näiteks kui otsite saidilt google.es, näitab see teile IP-d, mis vastab serverile, kus seda teenust majutatakse. Kui proovite selle numbri oma veebibrauseri aadressiribale sisestada, näete, et nii www.google.es kui ka nimetatud IP sisestades kuvatakse mõlemal juhul Google.

Miks ma seda ütlen? Noh, sest see aitab mul siduda DNS-serverid. Need serverid on muud teenused, mis sisaldavad tabeleid veebisaitide nimede ja neile vastava IP-ga, nii et kui keegi otsib aadressi nime järgi ja ei kasuta IP-d, paneb server brauseri näitama nimetatud veebisaidi sisu. Seda tehakse selleks, et see oleks inimeste jaoks intuitiivsem. Me ei mäleta kõiki neid numbreid lihtsalt, kuid me võime oma lemmikveebi nimed meelde jätta, eks?

Ja lõpetuseks täpsustan, mis on URL (ühtne ressursside otsija) või ühtne ressursilokaator, mida näeme veebisaidile sisenemisel ülal oma brauseri ribal. Oletame näiteks, et registreerite domeeni myweb.es. Sel juhul on see domeen teie päralt ja saate seda kasutada oma veebilehe kuvamiseks. Kujutage ette, et keegi pöördub aadressile http://www.miweb.es/info/inicio.html#web:

  • http://: Näitab, et pääseme juurde HTTP-protokolli abil, ehkki see võib olla ka HTTPS, FTP jne. Kuid antud juhul on see esimene, seetõttu on see veebisisu.
  • WWW: teate, et see on veebist.
  • myweb.es: see on teie registreeritud domeen, see tähendab nimi, mis asendab teie veebisaiti sisaldava serveri või hosti IP-d. Seetõttu on see lõppude lõpuks nimi, mis identifitseerib serveri või masina ... Lisaks sisaldab see tippdomeeni (tippdomeen), mis antud juhul on .es, et tuvastada, et tegemist on Hispaania veebisaidiga, kuigi see võib olla .se Rootsist, .com ettevõttest, .org organisatsioonist jne.
  • /info/home.html#web: see lihtsalt määratleb, et sellele sisule on juurde pääsetud, see tähendab infokataloog ja selles on fail home.html koos hüpertekstiga ja täpsemalt jaotisega web. See võis olla ka pilt, PDF, video jne. Nagu juhtub teie failihalduris, kui lähete kohaliku kõvaketta teele, eks?

Ma arvan, et sellega on piisavalt selge toimimine selgitatakse lihtsal viisil.

Õpetus: looge samm-sammult oma veebiserver

Apache'i testveeb

Kui teil on GNU / Linuxi levitamine mis tahesPeaksite teadma, et kui olete oma võrgu õigesti konfigureerinud, kuna teil ei saa olla dünaamilist IP-d, peab see olema staatiline või muul viisil muudab see selle väärtust ja veebile pääsemine on keerulisem. Lisaks peaksite pöörama tähelepanu ka sellele, kui teil on iptablesi või muu tarkvaraga konfigureeritud tulemüür, mille ükski reegel ei piira ülekandeid pordi 80, 8080 jne kaudu, justkui teil oleks AppArmor või SELinux, peaksid need lubama kasutajal act. veebiserveri deemon, antud juhul Apache.

Järgmine samm on antud juhul meie veebiserveri juurutamiseks tarkvara installimine Apache ja muud lisapaketid LAMP-i lõpuleviimiseks, kuid see oleks võinud olla teine. Minu puhul Debianilt:

sudo apt-get update

sudo apt-get install apache2
sudo service apache2 restart
sudo apt-get install mysql-server php5-mysql
mysql -u root
mysql -u root -p (sin no introdujiste el password durante la instalación)
sudo apt-get install php libapache2-mod-php5 php5-mycrypt
sudo apt-get install php5-sqlite

Siis saaks konfigureerige mõned parameetrid serverist, kui seda vajate, või võib-olla, kui see ei toimi ja saate lehe, mida ma teile eelmises pildis näitan, vaadake logisid, sest midagi on valesti läinud. lehele, pöördudes oma veebibrauseri poole ja määrates aadressiribal localhost 127.0.0.1 .2 või staatilise IP, mille olete oma serveri jaoks konfigureerinud. Vaikepordid on kataloogis /etc/apacheXNUMX/ports.conf, kui soovite neid muuta.

Soovi korral saate installida ka muid lisapaketid, kui teil on plaanis olla ka meiliserver või mõni konfiguratsioonipaneel nagu phpAdmin jne.

Hostige oma veebisaiti serveris

Veebilehe ehitamine

Kui meie server on valmis, pidage meeles, et arvuti, mille olete serverile pühendanud, peab alati olema sisse lülitatud ja võrguga ühendatud, nii et veebile pääseks juurde mis tahes muu seade, vastasel juhul on server "maas". Nüüd on meil ainult võõrustage meie veebisaiti, et oleksime võinud selle ise HTML-i või muu koodi abil luua või isegi kasutada CMS-i (näiteks WordPress), mis muudab meie asjad palju lihtsamaks ja mida saaksime hostida samas kohas ...

Ja selleks teeme selle sisse kataloogi / var / www / html / et kui me pole Apache'i konfiguratsiooni muutnud, on seal veebid hostitud. Näiteks võite teha väikese testi PHP abil, luues oma lemmiktekstiredaktoriga faili sisuga:

<?php phpinfo() ?>

Kutsu seda test.php ja nüüd, pärast apache2 deemoni taaskäivitamist, näete, kas sellele pääseb juurde brauserist: 127.0.0.1/test.php.

Loodan, et see õpetus on teid aidanud ja saate vähemalt natuke paremini aru, kuidas serverid töötavad, nii et nüüd iga kord, kui pääsete meie ajaveebile uudist lugema, teaksite kõike selle taga. Ärge unustage oma Kommentaarid, kahtlusi või ettepanekuid, ...