Cum să configurați un server web și să găzduiți un web pe GNU / Linux

URL-ul web

Dacă v-ați întrebat vreodată cum unii servicii de găzduire care există pe net pot găzdui o pagină web sau ce este un server web și cum funcționează, inclusiv care sunt barele care apar în adresa URL a unor pagini web, modul în care un client se poate conecta la o pagină web de la distanță etc. Acest articol vă va clarifica. Vă voi învăța nu numai conceptele despre ceea ce este un server, veți ști și cum să vă creați propriul server web pas cu pas datorită tutorialului nostru simplu.

Astăzi folosim cu toții servicii de la distanță de tot felul, de asemenea, din cloud computingul înfloritor, dar dacă există un serviciu care iese în evidență deasupra celorlalte, poate este cel pe care îl oferă servere web, deoarece există o mulțime de site-uri web pe care le vizităm zilnic pentru a citi știrile noastre preferate, pentru a verifica e-mailurile de pe interfețele web care oferă anumite servicii precum GMail, pentru a efectua tranzacții, pentru a lucra, pentru a face cumpărături online etc. Nimeni nu scapă de aceste servicii, nu? Cu toate acestea, pentru mulți dintre utilizatorii săi rămân necunoscuți ce se află în spatele lor ...

Ce este un server?

Ferma server

Unii utilizatori cred că un server este ceva special, ceva foarte diferit de ceea ce este cu adevărat. Dar, într-un limbaj simplu, un server nu este altceva decât un computer ca cel pe care îl putem avea în casa noastră, doar că, în loc să acționeze ca un client, îl face ca un server, adică oferă un serviciu. S-ar putea să credeți că, în acest caz, de ce sunt atât de rare acele imagini pe care le vedem la televizor sau în alte medii când ies servere ...

Ei bine, acele imagini precum cea pe care am inclus-o aici sunt imagini cu ferme de servere. Acesta este numele dat unei serii de clustere de computere care funcționează împreună ca un singur server. Rețineți că serviciile pe care aceste servere le oferă de obicei sunt destinate sutelor, miilor sau milioanelor de utilizatori care acționează ca clienți pe computerele, smartphone-urile, tabletele, televizoarele inteligente etc. Prin urmare, capacitățile pe care trebuie să le gestioneze sunt mult mai mari decât cele ale unui computer de acasă.

Trebuie doar să vă gândiți la servicii precum Twitter, câte milioane de utilizatori are această rețea socială, câte fișiere și mesaje sunt transferate în fiecare secundă. Dacă vă gândiți la asta, este un cantitate mare de datePrin urmare, nu este valabil cu o conexiune ca cea pe care o avem acasă și cu un computer normal. Sunt necesare conexiuni foarte rapide, astfel încât să nu existe întârzieri în accesele tuturor acelor utilizatori și să îi ofere capacitatea necesară, astfel încât să poată găzdui toate aceste informații.

Cu asta, ceea ce vreau să spun este că pentru acest serviciu se folosesc zeci sau sute de „calculatoare” ca cele pe care le putem folosi acasă, care sunt adăpostite în dulapuri cu rafturi. Dar, în esență, fiecare dintre ele nu este departe de un computer desktop ca cel pe care îl avem acasă. Poate că unii au microprocesoare speciale, cum ar fi AMD EPYC, Intel Xeon etc., poate au, de asemenea, mai multe unități de disc configurate ca RAID pentru a evita că, dacă vreunul dintre ele nu reușește, informațiile se pierd, dar, așa cum am spus, rețineți că sunt computere precum pe care îl gestionezi chiar acum și îți voi spune asta pentru că acum îți voi explica cum să transformi computerul într-un server modest ...

Desigur, acestea serverele sunt de multe tipuri, sunt cele care furnizează servicii cloud, precum stocarea, există cele care oferă servicii de e-mail, servere web, de asemenea unele care pur și simplu servicii precum DNS, NTP, DHCP, LDAP etc., adică toate acestea din urmă sunt foarte sunt necesare și cu siguranță le folosiți zilnic fără să vă dați seama, deoarece acestea sunt servicii pe care ni le furnizează un furnizor de servicii Internet sau furnizor de servicii Internet.

Ce este o pagină web?

Site web pe diferite dispozitive

Am menționat anterior că unele servere web furnizează găzduire sau găzduire pentru pagini web. O pagină web este un set de informații electronice sau digitale (HTML, PHP, CSS, ...) care poate conține numai text sau, de asemenea, alt conținut, cum ar fi aplicații web scrise în anumite limbaje de programare specifice sau scripturi (Perl, JavaScript, Ruby cu cadru RoR sau Ruby on Rails, PHP etc.), conținut multimedia (imagini, videoclipuri, sunete etc.) și, de asemenea, link-uri care vă direcționează de obicei către un alt loc de pe același site web sau către altul.

Și pentru ca acest lucru să fie posibil, avem serverele web care le găzduiesc, adică stochează toate aceste date pe hard diskul său și, de asemenea, o serie de protocoale de rețea, cum ar fi HTTP (HyperText Transfer Protocol) și HTTPS (HTTP securizat prin certificat SSL / TLS). Un software se va ocupa de acest lucru așa cum vă vom învăța mai târziu, adică să implementați o conexiune bidirecțională pentru client și că acesta poate naviga prin conținutul hipertext, adică mijloacele de a partaja, lega și interacționa cu informațiile adaptate la WWW (World Wide Web).

Cum funcționează?

Conexiune client-server

Ei bine, știm deja ce este un web și un server web, explicat în felul meu și cu un limbaj simplu, astfel încât mai mult sau mai puțin toată lumea să o poată înțelege, chiar și cei care nu au cunoștințe despre această tehnologie. Și acum continui cu această secțiune în care voi încerca să clarific funcționarea acestui sistem client-server. Dar pentru aceasta, mai întâi voi face diferența între cele două:

  • Client: clientul este utilizatorul care accesează site-ul web de pe dispozitivul său, fie el laptop, desktop, tabletă, smartphone etc. Pentru acces, aveți nevoie doar de o conexiune la Internet și un browser web, un software foarte important din partea clientului, care este responsabil de afișarea întregului conținut web într-un mod ușor de utilizat și de a permite utilizatorului să interacționeze cu acesta. Și pentru aceasta vom avea nevoie doar de adresa paginii web sau de un IP ..., deși s-ar putea să vă gândiți că acest lucru nu este întotdeauna necesar pentru a accesa, deoarece există motoare de căutare (de exemplu: Google) care, prin cuvinte cheie, ne permit să afișăm aceste site-uri web care au indexat și ai dreptate.
  • server de: După cum am explicat, va conține toate datele și un software care acționează ca un server, adică îi permite clientului să se conecteze pentru a face tot ce trebuie să facă. În cazul unui server web, acesta va fi, de exemplu, Apache, Lighttpd etc.

Aș dori să subliniez altceva și așa cum știți bine, adresa IP Este cea care identifică o mașină conectată la o rețea, în acest caz va fi adresa IP a serverului web. Sunt cateva servicii de acest gen care vă arată IP-ul paginii dvs. preferate, de exemplu, dacă căutați google.es, acesta vă va arăta IP-ul corespunzător serverului unde este găzduit acest serviciu. Dacă încercați să introduceți acest număr în bara de adrese a browserului dvs. web, veți vedea că atât punând www.google.es, cât și IP-ul respectiv, în ambele cazuri va afișa Google.

De ce spun asta? Ei bine, pentru că mă ajută să fac legătura cu Serverele DNS. Aceste servere sunt alte servicii care conțin tabele cu numele site-urilor web și IP-ul corespunzător, astfel încât atunci când cineva caută o adresă după nume și nu folosește IP-ul, serverul face browserul să afișeze conținutul site-ului respectiv. Acest lucru este făcut pentru ao face mai intuitiv pentru oameni. Nu ne putem aminti cu ușurință toate aceste numere, dar ne putem aminti numele site-ului nostru preferat, nu?

Și închei specificând ce este URL (Locator uniform de resurse) sau un localizator uniform al resurselor, pe care îl vedem în partea de sus a barei browserului nostru atunci când accesăm un site web. De exemplu, imaginați-vă că înregistrați domeniul myweb.es. În acest caz, acel domeniu va fi al dvs. și îl puteți utiliza pentru a afișa pagina dvs. web. Imaginați-vă că cineva accesează adresa http://www.miweb.es/info/inicio.html#web:

  • http://: Indică faptul că accesăm folosind protocolul HTTP, deși ar putea fi și HTTPS, FTP etc. Dar, în acest caz, este primul, prin urmare este un conținut web.
  • WWW: știți că este de pe World Wide Web.
  • miweb.es: acesta este domeniul pe care l-ați înregistrat, adică numele care înlocuiește adresa IP a serverului sau gazdei care conține site-ul dvs. web. Prin urmare, va fi un nume care identifică un server sau o mașină, până la urmă ... În plus, conține un TLD (Top Level Domain) care în acest caz este .es, pentru a identifica că este un site web din Spania, deși ar putea fi .se din Suedia, .com de la companie, .org Organizație etc.
  • /info/inicio.html#web: aceasta definește pur și simplu că acest conținut a fost accesat, adică un director de informații și în interiorul acestuia se află un fișier home.html cu hipertext și în special secțiunea web. Ar fi putut fi și o imagine, PDF, video etc. Așa cum se întâmplă în managerul de fișiere atunci când accesați o cale de pe hard diskul local, nu?

Cred că cu asta este suficient operare clară explicat într-un mod simplu.

Tutorial: construiți-vă propriul server web pas cu pas

Web de testare Apache

Dacă aveți a Distribuție GNU / Linux oriceTrebuie să știți că odată ce v-ați configurat corect rețeaua, deoarece nu puteți avea un IP dinamic, acesta trebuie să fie static sau altfel își va schimba valoarea și ar fi mai dificil să accesați web-ul. În plus, ar trebui să acordați atenție, de asemenea, dacă aveți un firewall configurat cu iptables sau alt software că nici o regulă nu restricționează transferurile prin portul 80 sau 8080 etc., ca și cum ar fi AppArmor sau SELinux, acestea ar trebui să permită utilizatorului să acționeze. daemon server web, în ​​acest caz Apache.

Următorul pas este instalarea software-ului pentru implementarea serverului nostru web, în ​​acest caz Apache și alte pachete suplimentare pentru a completa LAMP-ul, dar ar fi putut fi altul. În cazul meu, de la Debian:

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

Atunci ai putea configurați câțiva parametri de pe server dacă aveți nevoie de el sau poate dacă nu funcționează și primiți pagina pe care v-o arăt în imaginea anterioară, uitați-vă la jurnale pentru că ceva nu a funcționat ... Apropo, puteți vedea acea pagină accesând browserul dvs. web și setând localhost 127.0.0.1 .2 în bara de adrese sau IP-ul static pe care l-ați configurat pentru serverul dvs. Porturile implicite vor fi în /etc/apacheXNUMX/ports.conf în cazul în care doriți să le modificați.

Dacă doriți, puteți instala și altele pachete suplimentare, dacă intenționați să aveți și un server de e-mail sau unele panouri de configurare precum phpAdmin etc.

Găzduiți site-ul dvs. web pe server

Construirea site-ului web

Odată ce avem serverul pregătit, amintiți-vă că computerul pe care l-ați dedicat serverului trebuie să fie întotdeauna pornit și conectat la rețea, astfel încât web-ul să fie accesibil de pe orice alt dispozitiv, în caz contrar serverul va fi „oprit”. Acum avem doar găzduiește site-ul nostru web, că îl putem crea noi înșine folosind HTML sau alt cod sau chiar să folosim un CMS precum WordPress care ne face lucrurile mult mai ușoare și pe care le-am putea găzdui în același loc ...

Și pentru asta o vom face în directorul / var / www / html / dacă nu am schimbat configurația Apache, va fi acolo unde sunt găzduite paginile web. De exemplu, puteți face un mic test folosind PHP creând un fișier cu editorul de text preferat cu conținutul:

<?php phpinfo() ?>

Spune-i test.php iar acum, după repornirea daemonului apache2, veți putea vedea dacă acesta poate fi accesat din browser: 127.0.0.1/test.php.

Sper că acest tutorial v-a ajutat și că cel puțin înțelegeți un pic mai bine cum funcționează serverele, astfel încât acum, de fiecare dată când accesați blogul nostru pentru a citi o știre, să știți totul din spatele acestuia. Nu uitați să părăsiți comentarii, îndoieli sau sugestii, ...


Conținutul articolului respectă principiile noastre de etică editorială. Pentru a raporta o eroare, faceți clic pe aici.

8 comentarii, lasă-le pe ale tale

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   Peter el a spus

    Salut. Nu credeți că utilizarea PHP 5 în 2018 nu are prea mult sens?

  2.   Noe Taipe el a spus

    Buna ziua.
    Sunt începător când vine vorba de servere.
    Ce IP trebuie să aibă routerul?
    Ce ip trebuie să aibă PC-ul care funcționează ca server
    Apache ce ip trebuie să aibă?
    Sunt IP fixe publice?

  3.   jucapopo el a spus

    Sunt de acord cu Noe Taipe
    Am căutat informații pentru a configura un server web Linux de câteva săptămâni și în toate forumurile au pus „trucuri” care funcționează numai pe o rețea internă sau locală și presupun că scopul tău este să poți configura un server web și că cineva te poate vedea oricând în altul computer în afara rețelei dvs. din alt oraș, țară, ...
    Am reușit să fac ca un server web să-l vadă în rețeaua externă, că doar dacă pun IP-ul meu public și deschid portul în routerul meu modem, am instalat Bind9, pentru a putea indica domeniul inventat în rețeaua mea internă și care funcționează corect în rețeaua mea , dar nu pot găsi informații despre cum să fac același lucru prin Internet și că oamenii nu pun IP-ul meu, ci domeniul inventat așa cum fac, Google, țara, lumea, instanța engleză,….
    Salutări și sper să găsiți informații despre asta.

  4.   Logiteckno1 el a spus

    De asemenea, încerc să învăț cum să configurez un server, dar ceea ce mă interesează este cum să configurez un server pentru producție și încă nu găsesc informații bune.
    Dacă nu ați rezolvat problema pe care o aveți încă, vă sfătuiesc să creați un cont la noip.com. Creați un domeniu gratuit, puneți IP-ul public și configurați DDNS pe modemul dvs. Vă las un link: https://www.youtube.com/watch?v=6ijBQhn06CA
    Salutări.

  5.   GustavoIP el a spus

    Mulțumesc pentru contribuție, tocmai am instalat un server LEMP și datorită blogului dvs. am deja o idee despre cum să implementez paginile mele WEB, acum învățați puțin PHP sau HTML, oricare dintre acestea este mai ușor pentru mine și mai departe.
    Salutări.

  6.   Fabian Ariel Wolf el a spus

    Având în vedere cuvintele de deschidere, imaginați-vă că veți face un tutorial pas cu pas pentru oameni neexperimentați ca mine ... M-am înșelat.

  7.   Diego ramos el a spus

    M-a servit destul, mulțumesc foarte mult.

  8.   Miguel Angel Silva el a spus

    Bine rău acest tutorial ...