Ovo je uputstvo za pripremu CentOS 6 Linuksa na serveru kako bi na njemu mogao da radi WordPress. Ovde nema cPanel-a, PHPMyAdmin-a, sve se radi iz konzole dok će vam na kraju trebati i internet pregledač da biste instalirati WordPress i proverili da li sve radi.

Videćemo kako se instalira Apache, MySQL, PHP, PHP ekstenzije, kako pokrenuti httpd i mysqld zajedno sa serverom, kako izmeniti root lozinku za MySQL, kako se prave baza i korisnik iz konzole…

Ovo uputstvo ima edukativnu namenu i korisno je za one koji žele da se bave administracijom na Linuksu. Uputstvo ne sadrži korake za podizanje sigurnosti na serverskom okruženju kao ni dodatne postavke za bolji rad okruženja.

Ovde se podrazumeva da na svom serveru već imate instaliran CentOS 6 operativni sistem. Ukoliko već koristite server sa cPanel/WHM kontrolnom tablom nije potrebno da postavku radite na ovaj način. Ukoliko vam je sve ovo komplikovano, zakupite cPanel/WHM licencu.

Korak 1: Instalirajte i pokrenite Apache

Da instalirate Apache otvorite konzolu, povežite se sa serverom koristeći ssh povezivanje i ukucajte sledeću komandu:

yum install httpd

Nakon instalacija, obavezno i pokrenite Apache kucajući sledeće:

service httpd start

Evo kako to izgleda kada se radi u konzoli:
инсталација apache

Sada možete proveriti da li Apache radi pa u internet pregledaču ukucajte IP adresu vašeg servera: http://12.34.56.789 Pri tome treba da dobijete ovakvu stranicu, ukoliko je sve u redu:

apache test

Šta je Apache?

Apache je trenutno najzastupljeniji veb-serverski softver (veb-server). U pitanju je softver otvorenog koda i besplatan je. Naziv je dobio po prvobitnim stranovnicima Amerike, plemenu Apača. Više o tome, pročitajte na Wikipediji.

Šta je veb-server?

Kada neko u internet pregledaču ukuca adresu do neke stranice, dolazi do veb servera koji najpre proverava zahtev, a zatim i servira tu stranicu. U zavisnosti od stranice, veb server može pozvati i druge module dok generiše stranicu koju će poslužiti (servirati) posetiocu. Istovremeno, veb-server i brine da li su ti moduli spremni-raspoloživi pre nego što će ih pozvati.

Korak 2: Instalirajte i pokrenite MySQL

Instalirajte sada MySQL, pa za to otvorite konzolu i ukucajte sledeće:

yum install mysql-server

Sada i pokrenite mysqld:

service mysqld start

U konzoli to izgleda ovako:
mysql сервер инсталација

Šta je MySQL?

To je upravljački sistem za rad sa bazom podataka. Služi za bolju ogranizaciju i upotrebu podataka na serveru.

Šta je mysqld?

mysqld je MySQL serverski demon koji radi u pozadini operativnog sistema. Pozivanje ovog demona, ustvari startuje mysql server. Gašenje ovog demona, gasi i mysql server.

Korak 3: Podesite root lozinku za MySQL

Nakon instalacije MySQL -a potrebno je podesiti root lozinku za MySQL. Otvorite konzolu koja je povezana sa serverom preko SSH-a i ukucajte:

/usr/bin/mysql_secure_installation

Ovde će biti zatražena stara lozinka:

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Pošte ste tek sada instalirali MySQL i nemate lozinku samo stisnite Enter na tastaturi. Biće zatraženo i da unesete novu lozinku pa je postavite (i zapamtite ili je upišite negde).

Pre nego što sve bude završeno imaćete još nekoliko yes/no pitanja. Ukoliko niste sigurni i ne želite da čitate, nećete pogrešiti ukoliko ostavite podrazumevane odgovore i stisnete Enter svaki put.

Korak 4: Instalirajte PHP

Da instalirate PHP na serveru otvorite konzolu i ukucajte sledeće:

yum install php php-mysql

Evo kako to izgleda u konzoli:

Korak 5: Instalirajte PHP ekstenzije

U zavisnosti od toga šta vam je potrebno da radite na vašem WordPressu, istražite koje su vam PHP ekstenzije-moduli potrebni i instalirajte ih.

Evo primera instalacije nekih modula:

yum install php-mysql php-pdo php-pear php-pecl php-xml php-gd php-zlib

U konzoli to izgleda upravo ovako:

Korak 6: Neka se httpd i mysqld pokreću zajedno sa sistemom

Ukoliko se desi da restartujete server, httpd i mysqld demoni se neće pokretati sami. Potrebno je da ih pokrenete ručno nakon svakog restarta ili da omogućite da se pokreću automatski nakon svakog restarta servera.

Otvorite konzolu i ukucajte sledeće komande:

chkconfig httpd on
chkconfig mysqld on

Šta radi chkconfig komanda?

chkconfig ažurira i pretražuje “runlevel ” informacije o sistemskim servisima. Može da se koristi i za aktivaciju-deaktivaciju procesa. Opcije on, off, ili reset menjaju podešavanja koja su povezana sa pokretanjem sistema.

Korak 7: Proverite da li radi PHP

Sada možete proveriti da li radi PHP. Otvorite konzolu i ukucajte sledeće da biste napravili fajl koji ćete kasnije pozvati kroz internet pregledač i videli podatke o PHP-u:

nano /var/www/html/info.php

U prazan fajl koji ste otvorili za kreiranje ubacite sledeće:

<?php
phpinfo();
?>

Stisnite Ctrl+O da sačuvate uneto i Ctrl+X da izađete iz uređivača teksta. Restartujete httpd:

service httpd restart

Evo i kako to izgleda u konzoli:

Na kraju, ukucajte u internet pregledač vašu IP adresu servera i pokušajte da pogledate fajl koji ste upravo kreirali: http://12.34.56.789/info.php

Ukoliko dobijate ovakvu stranicu, sve je u redu i na ovaj način možete pročitati o PHP podešavanjima koja imate na svom serveru:

Korak 8: Preuzmite najnoviju verziju WordPressa

Povežite se sa serverom koristeći SSH povezivanje. Zatim ukucajte sledeću komandu da preuzmete najnoviju verziju WordPressa:

wget http://wordpress.org/latest.tar.gz

Ako do sada niste koristili wget, evo kako to izgleda u konzoli:

Dok ste još tu, ukucajte i sledeće da raspakujete arhivu koju ste preuzeli:

tar -xzvf latest.tar.gz

Korak 9: Napravite bazu podataka i korisnika

Da bi WordPress mogao da radi, potrebno je sada napraviti i bazu podataka i korisnika. Ukucajte sledeće da biste ušli u MySQL shell:

mysql -u root -p

Biće zatražena i lozinka koju ste postavili u koraku 3, pa je unesite.

Napravite novu bazu podataka sa imenom po želji. Ja sam kao primer stavio wordpress:

CREATE DATABASE wordpress;

Napravite korisnika sa imenom po želji. U primeru ispod stoji korisnik. Ime novog korisnika upisujete pre @localhost; :

CREATE USER korisnik@localhost;

Dajte lozinku za novog korisnika. Umesto ovde-ide-lozinka upišite lozinku po želji :

SET PASSWORD FOR korisnik@localhost= PASSWORD("ovde-ide-lozinka");

Dajte sve privilegije korisniku:

GRANT ALL PRIVILEGES ON wordpress.* TO korisnik@localhost IDENTIFIED BY 'ovde-ide-lozinka';

Osvežite MySQL:

FLUSH PRIVILEGES;

Evo kako se to ispiše u konzoli:

mysql> CREATE DATABASE wordpress;
Query OK, 1 row affected (0.00 sec)

mysql> CREATE USER user@localhost;
Query OK, 0 rows affected (0.00 sec)

mysql> SET PASSWORD FOR user@localhost= PASSWORD("password");
Query OK, 0 rows affected (0.00 sec)

mysql> GRANT ALL PRIVILEGES ON wordpress.* TO user@localhost IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> exit

Završili smo sa radom u ovom delu. Vratimo se WordPress fajlovima koje smo preuzeli i raspakovali.

Korak 10: Postavite WordPress

Potrebno je najpre napraviti novi konfiguracijski fajl za WordPress. Ovo se radi tako što se kopira sadržaj datoteke wp-config-sample.php u datoteku pod drugim nazivom wp-config.php;

cp ~/wordpress/wp-config-sample.php ~/wordpress/wp-config.php

Nakon toga, otvorite taj novi fajl u vi uređivaču teksta:

vi ~/wordpress/wp-config.php

Ovde upišite sve podatke: ime baze podataka, ime korisnika baze i lozinku za bazu. Ovako to izgleda u fajlu, prikazao sam samo deo koji se odnosi na izmene:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');

/** MySQL database username */
define('DB_USER', 'user');

/** MySQL database password */
define('DB_PASSWORD', 'password');

/** MySQL hostname */
define('DB_HOST', 'localhost');

Nakon što unesete izmene, sačuvajte ih i zatvorite Vi. 🙂

Da zatvorite Vi stisnite Esc zatim : zatim w zatim q i stisnite Enter.

Ne zaboravite da se WordPress fajlovi još uvek ne nalaze u direktorijumu odakle može da prikažu sajt javno. Hajde da to uradimo.

Korak 11: Prebacite WordPressove fajlove u /var/www/html

Sledeća komanda će to uraditi za vas, tačnije, prebaciće sve iz ~/wordpress/ direktorijuma u /var/www/html direktorijum:

cp -r ~/wordpress/* /var/www/html

Ovim ste završili prebacivanje WordPressa. Hajde da pre poslednjeg koraka restartujemo veb-server:

service httpd restart

Korak 12: Instalirajte WordPress

Sada, kada smo sve obavili kako treba, posetite IP adresu vašeg servera. Ukucajte je u internet pregledač i dočekaće vas ekran za unos osnovnih podataka:

Nakon što unesete osnovne podatke kao što su naslov, korisničko ime, lozinka, e-mejl, možete da počnete sa podešavanjem WordPressa. Ako vam treba Divi tema za WordPress, pričitajte Divi тема и билдер за Вордпрес сајт.

Zaključak – CentOS 6 i WordPress

Ovde nije kraj. Ovakvo okruženje treba nadograditi, obezbediti i održavati. Za to je potrebno i vreme i znanje. Ukoliko planirate da ovaj sajt ide javno na nekom domenu (obično je tako), možete domen usmeriti preko A zapisa ka IP adresi servera preko koje ste i testirali ispravnost PHP-a i Apache-a.

Ovakva postavka koristi se kada ne želite da koristite cPanel ili vam nije potreban. Ukoliko planirate samo da vežbate, obrišite sve pa ponovo iz početka.