Odată cu Black Friday și cu oferta de la Chroot m-au întrebat câteva persoane ce este de făcut când ai un VPS. Nu sunt expertul experților în domeniu, dar am configurat câteva servere la viața mea. Unele mai bine, altele mai prost. De-a lungul timpului, mi-a plăcut să învăț cât mai multe.
Varianta complexă e cea în care compilezi din sursă. Unora li se va părea greu lucrul ăsta și am zis că e mai bine să facem asta cu ajutorul unor programe auxiliare.
Cei care ați mai dat pe aici ați observat că folosesc 2 programe relativ intuitive și de mare folos, zic eu: WordOps și ManageWP pentru managementul site-urilor.
Ca la orice proiect gratuit oamenii se duc și pleacă. Își fac imagine pe un proiect, apoi actualizează când e timp. Dacă ajunge comunitatea destul de mare mai mulți participă la proiect și treburile stau mai bine. Așa că EasyEngine se află în perioada de reașezare.
Momentan, e funcțional și mult peste alte panouri de acest gen. Cel puțin, ce am testat eu pentru blog. E posibil ca, dacă voi citiți peste un an, treburile să fie un pic diferite, dar pentru asta există secțiunea de comentarii, nu? 🙂
Acum folosesc Debian 11 + WordOps + servere KVM pe NVMe sau servicii în Cloud acolo unde am nevoie. Trebuie să fiți atenți în situația în care n-aveți drepturi de scriere(sudo). Unele scripturi au nevoie de atenție sporită.
Trecând peste introducerea un pic mai lungă, hai să vedem cum instalăm un server de la 0.
Pasul 1. Cumpărăm hosting și domeniu
Domenii găsim și la 1 euro și la 10 euro. Discuția despre domenii este aici. Hosting la fel. La Chroot au fost la 9 euro pe an servere pe care poți pune un WordPress fără probleme.
Discutăm despre VPS-uri o puteți urmări aici.
Acelor domenii le atribuiți IP-ul serverului. Dacă veți cumpăra de afară, în general, veți găsi și DNS Management. Eu, până acum ceva timp, consideram că trebuie să fie acolo până am luat domenii din România. De atunci fac managementul de domenii la Digitalocean. Între timp, am mutat la Coudflare. Ceva mai rapid și cu mai multe opțiuni.
Pasul 2. Configurarea propriu zisă
Serverele VPS vin cu un panou de comandă. De acolo puteți seta o parolă de autentificare sau o cheiță SSH, să dați un restart serverului sau câteva detalii despre server. Tot de acolo se instalează sistemul de operare.
Wordops funcționează cu Ubuntu și Debian. Eu m-am obișnuit cu Debian așa că eu folosesc pe acesta. Oricum, instalarea e identică la aceleași, comenzile sunt aceleași. Ubuntu are la bază Debian. Mai nou, chiar am și un Ubuntu acolo unde nu am cea mai nouă versiune de Debian.
Pasul 3. Actualizări
Chiar dacă ați instalat sistemul de operare e posibil ca acesta să nu fie la cea mai nouă versiune. Partea mișto la servere este că ai update-uri mereu, iar tehnologia oricum e în continuă dezvoltare.
Așadar, plecăm la drum cu comanda de mai jos. Vom face acest lucru conectându-ne cu un program ca Putty sau Cmder sau chiar Terminal.
apt-get update && apt-get upgrade -y && apt-get autoremove -y && apt-get clean
Practic, sunt 4 comenzi mai sus. Primele 2 fac actualizări pentru distribuție și aplicații, iar ultimele 2 curăță fișierele pe care nu le mai folosește distribuția. Y-ul e pus acolo ca voi să nu mai confirmați de fiecare dată.
Pasul 4. Descărcăm și instalăm fișierele de care avem nevoie pentru WordOps.
wget -qO wo wordops.se/tup && sudo bash wo # Install WordOps
Comanda de mai sus ne descarcă fișierele și execută o parte din instalarea WordOps. Pe unele servere n-aveți comanda sudo activă așa că va trebui să folosiți comanda fără drepturi de administrare. Adică așa:
wget -qO wo wordops.se/tup && bash wo
Suntem aproape de final cu instalarea wordpress-ului. Așadar, dacă ați alocat cum trebuie IP-urile pentru domenii și s-a propagat totul deja putem discuta despre primul site instalat. Dacă îl instalați de la 0 e foarte simplu. Folosiți comanda de mai jos:
wo site create mariuscucu.ro --wp
Adică facem un site bazat pe WordPress și PHP8. Dacă mai vreți și alte opțiuni le aveți disponibile aici.
De aici totul se rezumă la un utilizator și o parolă cu care vă veți juca în WordPress ca la orice altă găzduire. Dacă vreți puteți să folosiți și un manager de resurse. Au un panou de control pe care puteți să-l instalați dacă vreți, eu unul nu-l folosesc.
Migrarea de la alt hosting
Dacă vreți să migrați e un pic mai complicat. Dar odată ce vă prindeți de idee eu zic că va fi mai ușor. 🙂 Și sunt mai multe lucruri de făcut, dar și mai multe metode de a face asta.
Cum fac eu asta?
De la vechea găzduire avem baza de date și fișierele, da? Așa trebuie să fie orice backup.
Baza de date se urcă pe hosting. O poți pune prin sFTP sau de undeva de unde o poți da jos, pe server, cu wget.
Eh, aici mă scarpin un pic și prefer să nu creez bază de date de la 0, ci să o folosesc pe cea de la instalarea de mai sus, de la pasul 4. Altfel, ar trebui să mai dau 2, 3 comenzi pentru fiecare site în parte pentru a crea baza de date, pentru a crea utilizatorul și pentru a da permisiuni să folosească baza de date.
Așadar, când migrez prefer să pun un site nou, iar mai apoi să pun baza de date. Așa, dacă import baza de date, mai fac o trecere pentru tabele vechi și nefolosite, mai curăț ce n-a fost în stare WP Sweep.
Practic, șterg tabelele din baza de date nouă și pun ce mă interesează din cea veche cu ajutorul Adminer.
Și, din moment ce am făcut asta, îmi păstrez vechile setări, parole și alte bălării.
În mod normal, importul bazei de date se face cu linia de comandă de mai jos:
mysql -u utilizatorbazadedate -p numebazadedate < fisierdescarcatpeserver.sql
După aceea trecem să urcăm fișierele. Fiind un WordPress deja instalat eu mă rezum la a urca pluginurile cu care lucrez, tema și pozele.
La fel, din moment ce WordOps suportă WP CLI puteți să folosiți comenzile de acolo de import. Aveți detalii aici.
Mai rămâne doar să mai facem câteva tweak-uri și să stabilizăm permisiunile fișierelor. Eu le urc de pe Windows și îmi setează drepturi pentru utilizatorul root. Pentru securitate și permisiuni ar trebui să folosim următoarea comandă:
chown -R www-data:www-data /var/www/
E cu dus și întors 775 pe întreg folderul www pentru că nu veți putea urca pozele. Va trebui să dați și un 777 pe folderul în care aveți pozele.
Sigur, optimizări se tot pot face, dar trebuie multă răbdare să cauți informații despre procesele pe care le vedeți că rulează pe acolo. Eu le luam la rând doar pe cele care mi se părea că îmi consumă destul de multe resurse.
Ah, dacă vreți să instalați bulk faceți un fișier bash cu următoarele:
SITES='site1.com site2.com site3.com'
for SITE in $SITES; do
wo site create $SITE --wp
done
Variante mai simple de atât sunt. Există multe panouri de administrare ce fac aproape același lucru.
Sigur, consumă un pic de resurse, dar dacă ești un pic mai tehnic merită să lași shared hosting-ul și să treci pe un VPS.
La mine e diferență de la cer la pământ și la un server pe care dau 2 euro pe lună am ajuns să n-am emoții că am 10-15 mii de unici într-o zi. Sau câteva sute de simultani pe blog.
Bobses a zis
Bun. Am spus că am să încerc și eu cândva EasyEngine-ul ăsta…
Dar 777 ăla pe folderul de uploads nu e o idee deloc bună. E un mare-mare-mare risc, ca tot ceea ce înseamnă 777 pe un server Linux.
Marius Cucu a zis
Într-adevăr. De asta am și precizat în articol acest lucru.
Între timp, am renunțat în a mai da 777 sau 775. Dau permisiuni folderului și atât.
Razvan a zis
Am si eu un VPS de la CHROOT, l-am prins de Black Friday, configuratie buna. Nu stiu nimic despre ceea ce inseamna un VPS sau Linux, am zis ca invat, dar de cand l-am cumparat acolo sta si “se pune praful”. O sa incerc ceea ce ai scris aici, poate o sa reusesc.
Marius Cucu a zis
Hmm, n-am avut timp să ilustrez cu poze. Oricum, pe chroot am 2 servere configurate cu varianta de mai sus. Dacă sunt probleme poți reveni cu un comentariu și încerc să te ajut. 🙂
Vasile R a zis
Util articol. Cu ajutorul ee am mutat blogul pe VPS. A fost necesar să elimin Apache2, altfel nu voia nginx-ul să pornească. Pentru a muta tema, fișierele și modulele, am folosit pluginul WordPress numit All-in-One WP Migration. Simplu și eficient.
Marius Cucu a zis
Salut Vasile, din păcate, am omis în articol problema ta. Soluția era într-un articol mai vechi, aici.
vasile a zis
Nu trebuia sa elimini apache, nginx nu porneste pentru ca foloseste acelasi port, in speta 80, poti face un revers proxy cu nginx pentru apache, o solutie eleganta, daca ai trafic mare 😉 mergi cu apache pe 8080 si nginx pe 80, apache ofera chestii diferite fata de nginx
Marius Cucu a zis
Așa e, treaba nu mai e valabilă acum, în articol am scris despre WordOps. E fork-ul actualizat de la EasyEngine. Easyengine a luat-o cu docker înainte, ăștia au rămas pe vechiul sistem și-au rezolvat buguri și încearcă și compatibilități cu Debian 9. Băiatul care face cele mai multe actualizări e fan Ubuntu, eu-s cu… debian. 🙂
vasile a zis
Ha, indiferent de software, fara hardware adecvat nu faci nici un kkt, cata optimizare ai baga, exita o limita!
Marius Cucu a zis
Te referi la site sau la VPS?! 🙂
vasile a zis
Ma refer la scaun, daca ai un taburet de 2 lei si tu ai 150 de kile, n’o sa te tina! 😉