Kako instalirati WordPress na VPS/Shared Hosting

Ako ste pratili naše osnovno uputstvo, već imate svoj prvi sajt i znate kako da pokrenete websajt koristeći EasyWP. Ukoliko želite da nastavite tim putem, jednostavno kliknite na

Ostali koraci su potpuno isti. Takođe za svaki novi sajt ćete imati Free Trial od 30 dana! U svakom trenutku možete odustati od produžavanja registracije, bez ikakvih posledica.


Ukoliko želite dugotrajnije i fleksibilnije rešenje, a pritom i jeftinije, nastavite da čitate!

Linkovi koji vam mogu koristiti:
Kako napraviti PayPal nalog?

Podešavanje sajtova na hostingu

Pokazaćemo vam dva puta koja možete izabrati.

Jedan koji je više „user friendly“ gde konfiguraciju možete završiti kroz korisnički interfejs, i drugi, malo komplikovaniji kroz korišćenje komandne linije i file managera.

Drugi način je malo komplikovaniji, ali vam otvara prostor za dodatne načine zarade novca. Kao što je npr. kreiranje Tools website-a i instalacija SaaS PHP skripti.

Za oba načina je potrebno prvo da se odlučite za tip hostinga. U tome će vam pomoći naše uputstvo ispod.

Pomoć oko izbora VPS ili Shared hosting -a možete pronaći ovde.

Konfiguracija kroz korisnički interface

U našem slučaju smo se odlučili za Name Cheap Shared hosting koji nudi i besplatan domen za prvih godinu dana ili popust oko 50% na najpopularnije domene. Uz ovo uputstvo možete koristiti i BlueHost hosting.

Ukoliko koristite naše linkove, možda ćemo dobiti mali procenat profita od kupovine, bez negativnog uticaja na vašu cenu!
Name Cheap Shared Hosting

U zavisnosti od periodike plaćanja i regiona dobićete različite cene i/ili drugačije pogodnosti.
Npr. U trenutku pisanja ovog članka, UK i EU su malo skuplji od US data centra, ali EU nudi Cloud Storage.

Nakon što odaberete paket koji vam najviše odgovara, dobićete opciju da izaberete već postojeći domen, kupljen kod NameCheap ili nekog drugog providera, ili da kupite novi u toku kupovine hostinga. Možete uneti FQN (puno ime) ili samo ime, pa ćete dobiti listu dostupnih domena sa tim imenom.

connect domain to hosting

Ukoliko ste koristili domen ranije ili ga prebacujete sa drugog domen providera, nekada će biti potrebno malo vremena da se veza hostinga i domena uspostavi.
Nakon što kliknete na connect domain (ukoliko povezujete postojeći NameCheap domen) možda dobijete poruku da je potrebno neko vreme da se konekcija uspostavi.

Takođe, možete i naknadno promeniti name server sa Namecheap BasicDNS na Namecheap Web Hosting DNS

Nakon što povežete domen sa hostingom, sledeći korak je konfiguracija. Konfiguraciju ćemo obaviti kroz cPanel.
Na listi domena, ili na listi hostinga, za odgovoarajući, povezani domen, dobićete opciju da pokrenete cPanel.

Nakon što otvorimo cPanel, želite da pronađete Domains sekciju i Addon Domains u okviru te sekcije. Iako je ime malo nesrećno, ovo je način da zapravo dodate novi domen.

namecheap cpanel

Unesite ime domena i pritisnite Tab. Druga dva polja će se automatski popuniti.
Dobićete obaveštenje da je domen uspešno dodat i opciju da pristupite file manageru i konfiguraciju SSL sertifikata.

addon domain
addon domains done

Nakon konfiguracije domena, u okviru cPanela pronađite softaculous installer i kliknite na WordPress instalaciju. Pratite uputstva i nakon par minuta ćete imati pokrenutu svoju verziju websajta na svom novom domenu.

softaculous
wordpress install

Konfiguracija kroz komandnu liniju

Drugi način koji je malo komplikovaniji ali vam pruža puno više! Servis koji mi lično koristimo je Contabo koji nudi odličan odnos cena/kvalitet.

Preporučujemo da za početak „preletite“ celo uputstvo jednom, pa tek onda krenete sa konfiguracijom.

Možete izabrati njihovo VPS rešenje (koje je znatno jeftinije od konkurencije – 5e mesečno) ili se čak odlučiti za Storage VPS koji je još povoljniji (4e mesečno), ali ima malo slabije performanse – koje su svakako dovoljne da počnete svoj posao.

Detaljno poređenje Contabo usluga i drugih providera možete videti na ovom YouTube snimku

Konfiguracija hostinga

U našem slučaju ćemo se odabrati za najjeftiniju varijantu VPS 300 – Storage VPS. Kao što možete videti u video gore, „rule of thumb“ je da možete hostovati 10 WordPress sajtova na 1GB Rama, što bi u ovom slučaju bilo 40 sajtova za cenu jednog!

Naravno ukoliko su vam sajtovi veći i sa dosta posetilaca, ovo će se smanjiti, ali čak i „samo“ 10 sajtova, po ceni jednog je više nego zadovoljavajuće.

Sam proces kupovine je prilično jednostavan. Ispod ćemo prikazati bitne korake.
Nakon što odaberete hosting koji je odgovarajući za vas, odaberite period plaćanja (u zavisnosti od VPSa imaćete opciju da birate region).
Napomena: Ukoliko odaberete duži period plaćanja, setup fee će biti manji ili ga neće biti.

Contabo VPS 300

Kao Image ćemo izabrati Ubuntu/LAMP u okviru Apps & Panels taba. Možete izabrati i Webmin+LAMP ako imate potrebe za tim.
LAMP – je popularan set komponenti potrebnih za funkcionisanje web servisa. Čine ga Linux, Apache, MySql i PHP.

contabo ubuntu lamp

Nakon izvršenog plaćanja i registracije, ukoliko niste imali nalog pre toga, dobićete email od Contabo servisa sa svojim login podacima.
Email će sadržati sve potrebne informacije za pristupanje serveru: IP adresu, User name, password. Kao i podatke za pristupanje vašem portalu za upravljanje nalogom.

Tu ćete takođe videti i napomenu da je kao Root pasword za MySql iskorišćen isti root password za pristupanje domenu i da je preporučeno da ga promenite.

contabo login email

Kroz my.contabo.com portal možete da nadogradite VPS, da je resetujete na „fabrička podešavanja“, dodate ram, backup, SSL…

My Contabo Portal

Konfiguracija sajta

Nakon što smo dobili pristup VPS mašini, potrebno je da odradimo konfiguraciju novih sajtova i instaliramo WordPress. Za to će nam biti potrebno par alata za pristupanje linux komandnoj liniji (SSH) i pristup file sistemu (SFTP).


U zavisnosti od operativnog sisteme možete koristiti Putty i WinSCP ako imate Windows ili ugrađeni terminal i npr Filezilla za MacOs i Linux.

Konfiguracija Hosts fajla

Hosts fajl se koristi za rutiranje zahteva na „lokalnoj“ mašini. Detaljnije uputstvo možete videti na Ubuntu Manpage. Za nas je sada bitno da nam hosts file omogućava da hostujemo više sajtova na istoj VPS mašini.

Koristeći alat koji ste odabrali (Putty ili Terminal) i konektujte se na Contabo VPS mašinu koristeći SSH protokol. U našem slučaju to će biti teminal.

ssh ip.adresa.vašeg.hosta -l root

Napomena: Nakon što se uspostavi konekcija, biće potrebno da unesete password. Kopirajte password iz maila i kliknite desnim klikom na terminal. Password neće biti vidljiv ali će biti iskopiran u terminal!

Uđite u etc direktorijum i izmenite hosts fajl. Ili koristite neki od file managera da pristupite fajlu.

cd /etc/
sudo nano hosts

U hosts fajlu, kao osnovno podešavanje bi trebalo da imate linije:

127.0.0.1        localhost
127.0.0.1        vmi123456.contaboserver.net  vmi123456

IPv6 configuration
....

Nakon vmi konfiguracije, a pre IPv6 konfiguracije, dodajte liniju za vaš sajt/sajtove. U našem slučaju je to

127.0.0.1        pokreniblog.com
hosts file

Ova linija kaže vašem hostu kada na vašu ip adresu (koju ste dobili od Contabo-a) stigne zahtev sa adresom imevašeg.sajta taj poziv će biti rutiran na localhost adresu 127.0.0.1.

Konfiguracija Apache servera

Apache server predstavlja srž hostinga web sajtova. To je servis koji zna da isporuči web stranice i podatke kada upit dođe ka vašem serveru. Da bi servis znao koje fajlove, i odakle da ih pokaže, potrebna nam je dodatna konfiguracija.

Apache server ima koncepte dostupnih (available) i aktivnih (enabled) sajtova. Za početak ćemo sajt podesiti, a nakon toga aktivirati.

Podrazumevana konfiguracija se nalazi na adresi /etc/apache2/sites-available. Unutar tok direktorijuma kreirajte imesajta.conf i unesite konfiguraciju.


     ServerAdmin admin@imesajta
     DocumentRoot /var/www/imesajta/
     ServerName imesajta
     ServerAlias www.imesajta

     imesajta/>
        Options +FollowSymlinks
        AllowOverride All
        Require all granted
     

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

Nakon izmena, vaš .conf file bi trebalo da izgleda otprilike ovako (primetićete da naš fajl ima dodatne konfiguracije za redirekciju). DocumentRoot je ime direktorijuma ge će se nalaziti sadržaj vašeg sajta.

apache conf

Proverite konfiguraciju apache servera nakon izmena pokretanjem komande apachectl -t, i ako dobijete poruku da je sve Ok, aktivirajte konfiguraciju i restartujte apache servis.

apachectl -t
a2ensite pokreniblog.com.conf
sudo service apache2 restart
Konfiguracija DNS recorda

Sledeći korak je da povežete ime vašeg domena sa IP adresom koju ste dobili od svog hosting providera. U našem slučaju to je povezivanje NameCheap domena i Contabo servera.

Prikazaćemo kako se povezivanje radi za NameCheap, ali je i za ostale providere (Google Domains, GoDaddy, Domain.com…) skoro pa identično podešavanje. Bitno je da pronađete DNS sekciju kod vašeg odabranog providera.

U okviru vašeg NameCheap dashboarda, kliknite na domain list i onda na Manage za odgovarajući domen. U Advanced DNS je potrebno je da dodate 2 recorda.
A Record za IP adresu i CName record za ime sajta. U našem slučaju to izgleda ovako.

namecheap dns records
Instalacija besplatnog SSL Sertifikata

Još jedna dobra stvar kod VPS hostinga je mogućnost da instalirate besplatan SSL sertifikat. Sertifikati inače koštaju između 5$ i 30$ u zavisnosti gde ih kupujete.

Za ovo ćemo iskoristiti CertBot i Let’s Encrypt sertifikat. Detaljno uputstvo i objašnjenje možete naći ovde. Koraci koje treba da uradite će biti navedeni ispod.

Ovaj set komandi će instalirati CertBot i omogućiti vam da se vaš sertifikat instalira i osvežava na svaka 2 meseca automatski.

sudo add-apt-repository ppa:certbot/certbot 
sudo apt-get update 
sudo apt install python-certbot-apache 

Nakon što smo uradili prethodne pripreme, potrebno je da instaliramo SSL sertifikat. Ovom komandom ćete instalirati sertifikat za domene sa i bez www (-d), dodaćete mail koji je vezan za sertifikat (-m), uraditi redirekciju sa http na https (–redirect) i prihvatiti Terms of Service (–agree-tos). Ukoliko želite da prođete kroz step-by-step konfiguraciju, pozovite samo komandu certbot –apache bez dodatnih argumenata.

certbot --apache --redirect -d imesajta.com -d www.imesajta.com -m admin@imesajta.com --agree-tos
certbot ssl certificate
Instalacija WordPressa

Kada smo podesili Apache konfiguraciju, potrebno je da obezbedimo i sadržaj koji će apache server prikazivati korisnicima. Prema osnovnom podešavanju Apache servisa, websajtovi svoj sadržaj čuvaju u direktorijumu /var/www/.
Navigiraćemo do njega i skinuti najnoviju verziju WordPressa.

cd /var/www/
wget wordpress.org/latest.zip

Nakon što se download završi, što ne bi trebalo da traje više od par sekundi, raspakujte arhivu.

unzip latest.zip

Ukoliko dobijete grešku da komanda unzip ne postoji, pokrenite prvo instalaciju paketa unzip, pa nakon toga unzip komandu. Unzip ćete instalirati pozivom naredne komande.

sudo apt-get install unzip
unzip latest.zip

Nakon što se proces završi, imaćete direktorijum sa imenom wordpress. Ukoliko želite da imate samo jedan sajt, možete ostaviti da se ovako zove, ali je preporučeno da ga nazovete imenom sajta.

U svakom slučaju, ime direktorijuma mora da odgovara imenu koje ste uneli u .conf fajlu. Takođe je veoma bitno da date „vlasništvo“ nad tim direktorijumom Apache servisu, kako bi vaš WordPress radio ispravno.

Promenu imena direktorijuma i prava pristupa ćete uraditi sledećim komandama (unutar /var/www direktorijuma).

mv wordpress/ pokreniblog.com
chown www-data:www-data -R pokreniblog.com/

Istalirajte dodatke pakete koji će vam biti potrebni za neke od WordPress pluginova.

sudo apt update
sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip
sudo service apache2 restart

Ako ste ispratili sve korake, nakon što pokušate da pristupite svom sajtu dobićete meni za dobro poznatu WordPress 5 minute installation.

Nakon što odaberete jezik, videćete da su vam potrebni ima baze, user i password. Sada ćemo vam pokazati kako da ih kreirate

WordPress installation second step
Konfiguracija MySql baze

Jedan od razloga zašto smo odabrali LAMP kao image je i taj što pored, Apache servera i PHPa, WordPress zahteva i svoju MySql bazu.
U par jednostavnih koraka ćemo kreirati sve što vam je potrebno.
Ulogujte se na MySql komandom ispod i unesite svoj password. Po defaultu to je password koji ste dobili u mailu za logovanje na Contabo server.

mysql -u root -p

Potrebno je da kreiramo usera, bazu i dodelimo tom useru prava nad bazom. Ovo su podaci koji su potrebni WordPressu da bi mogao da koristi bazu i tabele koje ćemo upravo kreirati. Imena koja smo mi koristili prilagodite svojim potrebama.
Baza: blogdb
User: dbuser
IDENTIFIED BY: šifra za usera kog kreirate.

CREATE DATABASE blogdb;
CREATE USER 'dbuser'@'localhost' IDENTIFIED BY 'vašašifra';
GRANT ALL ON blogdb.* TO 'dbuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Napomena: Ukoliko ovo nije vaš prvi sajt, ne morate kreirati usera, možete iskoristiti postojećeg. U tom slučaju možete preskočiti liniju 2. Svakako je preporučeno da za svaki websajt koristite odvojene usere i šifre.

Podatke koje ste iskoristili ovde, unesite na stranici za WordPress instalaciju. Ako ste sve uradili kako treba dobićete poruku sličnu ovoj

WordPress install step 3

Kliknite na Run the installation, na narednom ekranu popunite osnovne podatke o sajtu i podatke za logovanje i kliknite na Install. Nakon nekoliko trenutaka, pojaviće se vaš novi WordPress sajt!

Čestitamo!

Zaključak

Iako koraci koji treba da obavite da bi sami hostovali svoj websajt na VPS serveru deluju komplikovani, višestruko će se isplatiti!

Već nakon prvog sajta, podešavanje narednog ćete moći da završita za manje od 20 minuta! Bez dodatnih troškova osim kupovine domena. Ovo je idealan način da za 5e mesečno isprobate 5, 10, 20 ideja/websajtova i nastavite da radite na onima koji se pokažu kao uspešni.

Pored WordPress hostinga, LAMP okruženje vam omogućava i instalaciju PHP SaaS skripti/Tools Websajtova, što može da bude dodatni izvor prihoda.

Ukoliko imate pitanja ili vam treba pomoć, slobodno nas kontaktirajte!

Leave a Reply

Vaša adresa e-pošte neće biti objavljena. Neophodna polja su označena *