Postavljanje WordPress sajta na server

Razvoj WordPress sajta lokalno, na vašem računaru, može značajno da ubrza čitav proces. Istovremeno, omogućava fleksibilnost u smislu da možete da testirate različite opcije i podešavanja WordPressa, teme ili dodataka, što može da bude dosta komplikovano kada je sajt u produkciji. Nakon čitavog procesa razvoja, sledeće pitanje koje se nameće je „Kako postaviti WordPress sajt na server?“. Ako ste početnik u radu s WordPress-om, proces prenosa vam može delovati dosta komplikovano, iako nije baš tako. Naravno, pre samog prenosa je potrebno da registrujete domen i zakupite prostor (hosting) za sajt, pa ako to već niste uradili sada je pravo vreme za to.

Za prenos sajta na server možete koristiti neki od WordPress pluginova koji za to služe, kao što su na primer BackupBuddy, Duplicator ili Akeeba Backup CORE, ali mi ćemo se u ovom članku posvetiti manuelnom, korak-po-korak prebacivanju sajta kako biste naučili i razumeli kompletan proces.

1. Prebacivanje fajlova

Postoji nekoliko načina za prebacivanje fajlova sajta, a mi ćemo objasniti kako to da uradite putem FTP klijenta. Trenutno najpopularniji i najlakši za korišćenje je FileZilla FTP klijent. FilleZillu možete preuzeti sa sledeće stranice: https://filezilla-project.org/download.php?type=client

Nakon instalacije, pokrenite FileZillu i unesite podatke za pristup hosting nalogu…

Unosite redom sledeće podatke:

  1. Host // adresa FTP hosta ili adresa domena
  2. Username // korisničko ime cPanel/FTP naloga
  3. Password // Lozinka cPanel/FTP naloga

Povežite se na server klikom na dugme „Quickconnect“.

File Zilla Quickconnect

U desnom delu FileZille (Remote Site) bi trebalo da se pojavi lista direktorijuma na serveru, što znači da ste uspešno povezani i vaš naredni korak je prebacivanje fajlova na server.

Ako ne vidite listu direktorijuma, došlo je do greške prilikom povezivanja, a ovo su mogući razlozi za to:

  • Vaš domen je tek registrovan u prethodnih 48 sati, pa je moguće da još uvek nije postao dostupan na Internet mreži. Sačekajte bar 24 do 48 sati od registracije domena ili koristite privremenu adresu ili IP adresu za pristup serveru.
  • Uneli ste pogrešne podatke za pristup. Obratite pažnju da se podaci moraju uneti potpuno identično sa tačno otkucanim velikim i malim slovima. Nekad se dešava da se prilikom kopiranja podataka iz maila greškom „uhvati“ i razmak ispred ili iza lozinke.
  • Pokušajte sa promenom tipa komunikacije, odnosno odaberite „Passive mod“ u konfiguraciji FileZille ako je trenutno podešen „Active mod“ ili obratno.
  • Postoji mogućnost da vaš internet provajder blokira FTP port. Kontaktirajte vašeg internet provajdera da proverite da li je ovo slučaj i ako jeste oni će vam objasniti kako to da rešite.

Ako ništa od navedenog nije slučaj, kontaktirajte web hosting podršku.

Filezilla Connection Status

Kada se uspešno povežete sa serverom, na redu je transfer fajlova.

U levom panelu FileZille na slici ispod (1) je prikazana struktura direktorijuma na vašem računaru. Odaberite direktorijum u kome se nalaze fajlovi sajta.

U desnom panelu (2) odaberite public_html direktorijum na serveru ili direktorijum dodatnog domena u slučaju da sajt postavljate na dodatni domen.

Da započnete prenos fajlova, u levom panelu kliknite na bilo koji fajl, a zatim označite sve fajlove držeći istovremeno CTRL + A na tastaturi. Desni klik na označene fajlove i odaberite „Upload“ ili jednostavno prevucite označene fajlove u desni deo FileZille.

Filezilla File Upload

Status prenosa možete pratiti na dnu FileZille. „Queued Files“ označava koliko fajlova je preostalo za prebacivanje.

2. Prebacivanje baze podataka

Za početak, potrebno je da sačuvate podatke koji se nalaze u bazi podataka na vašem računaru. Kasnije ćete te podatke prebaciti na server. Ako koristite WAMP ili XAMP server na svom računaru, možete da izvezete podatke kroz phpMyAdmin interfejs.

Otvorite phpMyAdmin na računaru i iz levog panela kliknite na naziv baze podataka sajta. Kliknite na tab „Export“ i na toj strani u sekciji „Export Method“ odaberite „Custom“.

Phpmyadmin Export Database

Dobićete proširenu listu opcija i tu je potrebno da podesite sledeće…

U sekciji „Output“ za „Compression“ odaberite „gzipped“. Time će biti značajno umanjena veličina baze što će omogućiti lakše postavljanje na server.

Database Export Output

U sekciji „Object creation“ options se uverite da nije odabrana opcija „Add CREATE DATABASE“. To bi na serveru generisalo grešku prilikom uvoza. Ostale opcije označite kao na slici ispod.

Object creation options

Kliknite na dugme „GO“ na dnu stranice i sačuvajte fajl na računar.

Sada je potrebno da na serveru kreirate bazu podataka i da uvezete generisani fajl sa računara.

U cPanelu kliknite na „MySQL Databases“ ikonicu.

U sekciji „Create a New Database“ unesite naziv baze. Možete uneti proizvoljan naziv, odnosno naziv ne mora da bude isti kao na lokalnom serveru. Kliknite na dugme „Create Database“.

Create New Database

U sekciji „Add A New User“ unosite podatke korisnika baze. Kao i naziv baze, ovo ne mora da bude isti username i lozinka korisnika sa lokalnog servera. Neophodno je da koristite kompleksnu lozinku za pristup bazi, tačnije, polje za jačinu lozinke (Strength) mora da pokazuje preko 50% da bi lozinka bila prihvaćena. Možete je generisati klikom na dugme „Password Generator“. Kliknite na dugme „Create a User“.

Create Database User

Naziv baze, ime korisnika kao i lozinku ćete kasnije postaviti u konfiguracioni fajl WordPress-a, pa ih negde zapišite. Ako ste za naziv baze uneli na primer: wp, u konfiguracioni fajl ćete uneti „username_wp“ gde je „username“ korisničko ime vašeg hosting naloga. Isto važi i za ime korisnika baze.

Sada je potrebno da dodelite privilegije korisniku za korišćenje baze. U sekciji „Add a User to a Database“ odaberite naziv novokreirane baze i korisnika i kliknite na dugme „Add“.

add-user

Na sledećem koraku odaberite „ALL PRIVILEGES“, a zatim kliknite na „Make Changes“.

User Privileges

Uspešno ste kreirali bazu, a sada je potrebno da uvezete podatke sa računara na server.

Na home strani cPanela kliknite na „phpMyAdmin“ ikonicu.

myadmin-icon

U levom panelu phpMyAdmin-a ćete videti bazu koju ste maločas kreirali. Kliknite na naziv te baze, a zatim odaberite tab „Import“. Kliknite na dugme „Browse“ i odaberite generisani fajl sa vašeg računara.

phpmyadmin import database

Na dnu strane kliknite na dugme „GO“.

Ako je uvoz uspešan, prikazaće vam se listing tabela u levom panelu i poruka označena zelenom, a ako dobijate grešku, ovo su mogući razlozi…

  • U sintaksi imate „Create Database“ komandu. Korsnik baze nema privilegije za izvršavanje ove komande kroz „phpMyAdmin“ intefejs. To znači da je prilikom izvoza označena opcija „Add CREATE DATABASE“. Neke starije verzije phpMyAdmin-a nemaju mogućnost isključivanja ove opcije, što znači da biste taj kod morali ručno da uklonite iz izveženog fajla.
  • Postoji greška u sintaksi kôda. Poruka o grešci ukazuje na kojoj liniji i zbog čega je došlo do problema.
  • Fajl koji postavljate je preveliki. Ako prilikom izvoza niste odabrali metod kompresije (Compression), odaberite tu opciju prilikom izvoza i pokušajte ponovo.

3. Izmena WordPress konfiguracije

Nakon prenosa baze i fajlova, potrebno je da napravite izmene u „wp-config.php“ fajlu na serveru kako bi sajt proradio u novom okruženju. To možete obaviti jednostavno kroz editor fajlova u cPanelu.

U sekciji „Files“ u cPanelu kliknite na ikonicu „File Manager“.

U File Manager-u, otvorite direktorijum u kome se nalazi „wp-config.php“ fajl. Desni klik na „wp-config.php“, a zatim „Edit“ iz padajućeg menija.

wp-config-edit

Otvoriće vam se cPanelov editor fajlova, a u njemu je potrebno da unesete podatke za pristup bazi koju ste kreirali kroz cPanel.

define('DB_NAME', 'naziv baze podataka');
define('DB_USER', 'naziv korisnika baze');
define('DB_PASSWORD', 'lozinka korisnika baze');
define('DB_HOST', 'host za pristup bazi');

U našem primeru naziv baze podataka je „cpuser_wp“ kao i naziv korisnika baze. Host za pristup treba da bude „localhost“, mada se kod nekih provajdera to može razlikovati.

Sada pronađite liniju // ** MySQL settings – You can get this info from your web host ** //.

Iznad te linije dodajte sledeće…

define('WP_HOME','http://www.vasdomen.tld');
define('WP_SITEURL','http://www.vasdomen.tld');

Umesto „www.vasdomen.tld“ unesite naziv domena vašeg sajta.

Obratite pažnju na putanje ka direktorijumima u okviru konfiguracije. Neki od dodataka za keširanje u konfiguraciju dodaju vrednosti sa putanjom do privremenog direktorijuma na vašem računaru. Takva linija u „wp-config.php“ fajlu može izgledati ovako:

define('WP_TEMP_DIR', 'c:\wamp\www\mojsajt\wp-content\uploads');

Ukoliko ova putanja postoji, promenite je tako da odgovara novom okruženju na serveru. U našem slučaju, putanja bi trebalo da izgleda ovako:

define('WP_TEMP_DIR', '/home/username/public_html/wp-content/uploads');

Username u putanji je korisničko ime cPanel naloga.

U gornjem desnom uglu cPanel editora se nalazi dugme „Save“. Sačuvajte promene klikom na to dugme i zatvorite tab, a zatim ponovo pristupite FileManager-u, ali ovom prilikom na pop-up prozoru koji se pojavljuje nakon klika na ikonicu „File Manager“, obavezno obeležite opciju „Show Hidden Files (dotfiles)“.

Sada bi trebalo da proverite sadržaj „.htaccess“ fajla. Ako ste podesili neki od ponuđenih tipova prikaza URL-ova u „Settings > Permalinks“, važno je da u .htaccess-u promenite putanje u delu kôda koji služi za redirekciju zahteva ka „index.php“ fajlu.

htaccess-edit

Obično taj deo kôda sadrži direktivu sa putanjom koja nije ispravna kada se sajt prebaci na server. U takvom slučaju sadržaj .htaccess-a izgleda na primer ovako…

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /mojsajt/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /mojsajt/index.php [L]
</IfModule>
# END WordPress

Primetite putanju „mojsajt/“. Ovo je deo adrese na kojoj se nalazi sajt na vašem računaru. Taj deo na serveru nije potreban i treba ga ukloniti.

Nakon te promene .htaccess bi trebalo da izgleda ovako.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

 

4. Izmena linkova

Bez obzira na prethodnu izmenu konfiguracije, na sajtu će slike i linkovi u člancima zadržati apsolutne putanje ka lokalnom serveru. Da ne biste sve linkove menjali ručno, možete instalirati dodatak pod nazivom „Better Search Replace“ koji putanje menja automatski u svim člancima. Jednostavan je za korišćenje i zahteva samo par koraka za promenu.

Instalirajte i aktivirajte pomenuti dodatak na strani „Plugins > Add New“.

Dodatku pristupate kroz meni „Tools > Better Search Replace“.

U polje „Search for“ unesite adresu putem koje ste pristupali sajtu na vašem računaru. Primer: http://localhost/wordpress/, a u polje „Replace with“ unosite naziv vašeg domena u formatu http://www.vasdomen.tld/. Obavezno na kraju obe adrese dodajte kosu crtu „/“ kao u datim primerima.

Odaberite sve tabele u opciji „Select tables“ i obeležite „Case-Insensitive“ kao i „Replace GUIDs“ opcije.

Opcija dry-run je korisna ako pre promene želite da proverite na koliko mesta i u kojim tabelama će URL biti promenjen, pa je možete obeležiti pri prvom izvršavanju, ali drugi put bi trebalo da bude isključena kako bi se adrese zaista promenile u bazi.

Kada ste obeležili potrebne opcije, kliknite na „Run Search/Replace“…

Better Search Replace

Proverite da li se sve slike i linkovi na stranicama prikazuju ispravno. Pre provere isključite WAMP, XAMP ili koji god server koristite na svom računaru, kako sajt ne bi “povukao” slike sa vašeg računara pa biste imali utisak da je sa putanjama sve u redu, dok za posetioce sajta to možda ne bi bilo ispravno.

Ako se neke slike ne učitavaju kako treba, proverite putanje u okviru podešavanja teme ili vidžeta. Nakon što izmenite linkove, dodatak „Better Search Replace“ možete obrisati sa sajta.

Naredni koraci

Vaš sajt je sada na mreži, ali se posao oko sajta tu ne završava. Da biste iskoristili sve prednosti internet pretrage, sajt je potrebno optimizovati za pretraživače. Ispratite ove osnovne SEO smernice koje će poboljšati pozicioniranje sajta na pretraživačima.

Još jedna bitna stavka na koju je potrebno da obratite pažnju je bezbednost sajta. Važno je da redovno vršite nadogradnje WordPress-a, teme i dodataka na poslednje verzije, kako vaš sajt ne bi bio hakovan, zbog upotrebe zasterelih komponenata koje često sadrže bezbednosne propuste.

8 komentara na “Postavljanje WordPress sajta na server

  1. Одличан туторијал.

  2. Vladan says:

    Predobar tutorijal.zanima me da li je potrebno mjenjati url-ove u general settings?

    1. Poštovani Vladane,

      Ako postavite konstante WP_HOME i WP_SITEURL u wp-config.php fajl, kao što je navedeno u članku, to svakako neće biti potrebno, a ni moguće, jer će WordPress tada u okviru podešavanja na „General“ stranici samo prikazati adrese koje ste definisali, ali će njihova promena na toj stranici biti onemogućena. Sve dok postoje navedene konstante u wp-config.php fajlu, te adrese ćete moći da menjate samo kroz taj konfiguracioni fajl.

  3. sasa says:

    Originalan tekst !!! sve pohvale !!! ovo ce mnogim pomoci kako da instaliraju WP

  4. Dragoslav says:

    Korisno za sve koji su navikli da razvijaju projekte na localhostu i zele da ih pokrenu na serveru, na WP platformi.

  5. Vicky says:

    Šta znači kad dođemo do Izmene konfiguracije i u File menager-u je sve ukočeno, ne prikazuju se nikakvi fajlovi niti bilo šta može da se pokrene? Sve dotad je odrađeno kao u tutorijalu.

    1. Može biti samo neki privremeni problem sa učitavanjem File Managera ili možda sa radom JavaScripta u Vašem browseru. Pokušajte ponovo da učitate stranicu sa Ctrl+F5 ili pokušajte iz nekog drugog browsera. Ako ne uspete ni iz drugog browsera obratite se tehničkoj podršci za pomoć.

  6. Dejan says:

    Odlican i koristan tutorijal. Hvala

Ostavite odgovor na sasa Otkaži odgovor

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