BikeGremlin pretraga...

Softaculous WordPress staging i menadžment

U ovom članku ću objasniti kako se lako može napraviti “staging” (stejdžing) kopija WordPress sajta, ili klonirati sajt, pomoću Softaculous alata koji često bude u paketu sa shared i reseller hostingom uz cPanel, ili DirectAdmin kontrolni panel.

Sadržaj:

  1. Uvod
    1.1. Šta je to Softaculous?
    1.2. Šta je to kloniranje sajta?
    1.3. Šta je to “staging” sajt?
  2. Softaculous i WordPress
    2.1. Pokretanje Softaculous-a i instalacija WordPress-a
    2.2. Povezivanje Softaculous sa postojećom WordPress instalacijom
    2.3. Menadžment WordPress instalacije pomoću Softaculous alata
    2.4. Kreiranje stejdžing kopije WordPress sajta
  3. Zaključak
  4. Primer 1 – kloniranje / migracija sajta pomoću Softaculous
    4.1. Problemi – rešavanje
    …4.1.1. Problemi sa (firewall?) zaštitom provajdera


1. Uvod

1.1. Šta je to Softaculous?

Softaculous (link ka njihovom sajtu) je najčešće pogrešno napisan termin u računarstvu. 🙂
OK, sad ozbiljno: to je softver koji omogućava automatsko (“jednim klikom”) instaliranje raznih skripti i aplikacija na server. Takođe omogućava održavanje (menadžment) tih aplikacija – kako ću objasniti u ovom članku u kontekstu WordPress instalacija.


1.2. Šta je to kloniranje sajta?

Kloniranje sajta je slično kopiranju, tj. migraciji WordPress sajta. S tim da se menja (pod)domen. Dakle, uprošteno rečeno:

  • migracija bi bila seljenje io.bikegremlin.com na drugi server (nema previše smisla raditi migraciju nazad na isti server),
  • dok bi kloniranje bilo pravljenje kopije tipa staging01.bikegremlin.com i smeštanje takve kopije bilo na isti, bilo na drugi hosting server.


1.3. Šta je to “staging” sajt?

Engleski izraz “staging” koristim u originalu, jer ne postoji odomaćen prevod da se zna na šta se misli. Bukvalni prevod bi glasio “pozornica”, ali značenje/upotreba izraza je više u kontekstu “probni“.

Dakle: staging sajt je kopija sajta (sa identičnom temom, svim podešavanjima, svim plaginima, često i sadržajem) koja služi za testiranje izmena i ažuriranja (eng. “update”) pre puštanja istih na “glavni” (živi, produkcioni, eng. “live”, “production”) sajt.

Odnos staging in live (živog) sajta
Odnos staging i live (živog, produkcionog) sajta
Slika 1


Staging sajt se obično pravi na lokalnom računaru (kako kreirati staging okruženje na svom lokalnom računaru), ili na serveru – koristeći pod-domen. Prednost instalacije na serveru (pomoću pod-domena) je što se tada testiranje može raditi na okruženju koje je koliko god je to moguće identično okruženju produkcionog sajta.

Ovaj sajt je na (pod)domenu io.bikegremlin.com. Staging sajt bi se mogao postaviti na staging01.bikegremlin.com, ili slično. Ne bih preporučio smeštanje staging sajta u pod-direktorijum (poput io.bikegremlin.com/staging01), iz više razloga koji prevazilaze obim ovog članka.


2. Softaculous i WordPress

Softaculous nudi mogućnost lakog instaliranja WordPress sajta, kloniranja instaliranog sajta, podešavanje bekapa i aktiviranje/deaktiviranje automatskog ažuriranja.
Ovo poslednje i sam WordPress nudi od verzije 5.5 (videti WordPress 5.x i Gutenberg editor), i to ne bih preporučio za produkcione sajtove: testirajte sva ažuriranja na kloniranoj staging verziji sajta, pre ažuriranja na produkciji.


2.1. Pokretanje Softaculous-a i instalacija WordPress-a

Da biste krenuli, kliknite na ikonicu za WordPress u glavnom meniju cPanel-a, ili DirectAdmin-a:

Pokretanje Softaculous WordPress menadžmenta
Pokretanje Softaculous WordPress menadžmenta
Slika 2


Zatim, ako se želi instalirati WordPress, ići na “Custom Install” (moja preporuka):

Softaculous custom WordPress instalacija
Izaberite “Custom Install” (1)
Unesite pod-direktorijum, ako ne želite instalirati na root svog (pod)domena (2)
Slika 3


Većina opcija su jasne. Ne razlikuju se puno od klasičnih opcija pri instalaciji WordPress-a – samo brže i jednostavnije. Neću ovde ulaziti u dubinu. Glavna “caka” je što Vas nigde ne pita za šifru korisnika baze. Postoje načini da se ovo naknadno utvrdi i izmeni, (o tome nešto kasnije), samo nije uvek pouzdano, pa stoga kraća digresija:

Digresija – “ručni” način: Objasnio sam već kreiranje baze i korisnika u cPanel-u, i u DirectAdmin-u. Za izmenu lozinke je dovoljno izabrati opciju “Change password” iz, na tim linkovima prikazanog, menija za rad sa bazom i korisnicima.
Da samo vidite koja je lozinka za bazu, otvorite fajl “wp-config.php” iz direktorijuma WordPress instalacije na serveru i potražite nešto nalik ovome:

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

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

To pod navodnicima posle ‘DB_USER’ je ime korisnika baze, a pored ‘DB_PASSWORD’ je lozinka.


2.2. Povezivanje Softaculous sa postojećom WordPress instalacijom

Ovo je zgodna stvar – jer omogućava kasnije lako pravljenje stejdžing sajta, na osnovu postojeće instalacije, čak i ako je WordPress instaliran “ručno” (a ne korištenjem Softaculous alata za instalaciju).

Da biste uradili import, potrebno je izabrati opciju “Import” (prikazanu u gornjem desnom uglu slike 3), a zatim:

Importovanje postojeće WordPress instalacije pomoću Softaculous Import softvera
Importovanje postojeće WordPress instalacije pomoću Softaculous Import softvera
Slika 4


U ovom slučaju, već sam ručno instalirao WordPress na tt33.bikegremlin.com na testnom serveru, i podesio je da radi preko https protokola (SSL/TLS enkripcija). Ostaje da se klikne na opciju “Start scanning for installations” na narednom ekranu.

Dodao bih još da Softaculous omogućava i migraciju sajta, tako što će se kliknuti na “From Remote Server” (gornji desni ugao na slici 4). Ovde je njihovo objašnjenje (na njihovom sajtu, na engleskom): Softaculous remote WordPress website import. Uber-cool stvar!
– lična napomena: testirano i za migracije sa DirectAdmin na cPanel, ali još ne u “kontra-smeru” – isprobaj i to, lenčugo… – urađeno!
Potrebno je obrisati .htaccess nakon importa.

Pustite Softaculous da nađe instalaciju
Pustite Softaculous da nađe instalaciju
Slika 5


Ako sve prođe kako treba, dobićete ovakvu poruku:

Softaculous je uspešno prepoznao moju ručnu WordPress instalaciju
Softaculous je uspešno prepoznao moju ručnu WordPress instalaciju
Slika 6


Sad je malo nesretno urađen interfejs, treba kliknuti na Softaculous natpis (gore levo na slici 6), pa na WordPress ikonicu. I tada ćete moći uređivati instalaciju pomoću ovog cool alata.


2.3. Menadžment WordPress instalacije pomoću Softaculous alata

Iz glavnog Softaculous WordPress menija se mogu videti opcije za menadžment instalacije:

Softaculous opcije za menadžment WordPress instalacije (označio sam svaku brojem)
Softaculous opcije za menadžment WordPress instalacije (označio sam svaku brojem)
Slika 7


Objasniću opcije ukratko, redom, kako sam ih numerisao na slici 7:

  1. Uređivanje instalacije pomoću Softaculous WordPress menadžera – uključivanje/isključivanje auto-ažuriranja i sl.
  2. Kreiranje staging sajta (o ovome više u poglavlju 2.4.).
  3. Kloniranje sajta – u pod-direktorijum postojeće instalacije, ili domen/pod-domen kreiran unutar cPanel/DirectAdmin naloga).
  4. Kreiranje bekapa – na hosting serveru.
  5. Izmena detalja (šifra korisnika baze i sl.) – veoma zgodna opcija, i laka za upotrebu, samo ne radi baš uvek.
  6. Brisanje WordPress instalacije (sajta).


2.4. Kreiranje stejdžing kopije WordPress sajta

Zgodna opcija (označena brojem 2 na slici 7). Kada se na nju klikne, dobija se ovako nešto:

Kreiranje staging kopije WordPress sajta, pomoću Softaculous-a
Kreiranje staging kopije WordPress sajta, pomoću Softaculous-a
Slika 8


Za ovaj primer, izabrao sam kreiranje klona u pod-direktorijumu “staging” (1), a ne kao drugi (pod)domen, mada bih to svakako savetovao. Izabrao sam i ime baze (2), ime sajta (3) i kliknuo na “Create Staging” (4). Pa sačekao par minuta…

I - kreirana je staging kopija. Samo kliknite na "Return to Overview" - nema potrebe da Tweet-ujete o tome...
I – kreirana je staging kopija. Samo kliknite na “Return to Overview” – nema potrebe da Tweet-ujete o tome…
Slika 9


Sad možete sve lepo testirati na staging kopiji sajta, pa, kada se uverite da sve radi, jednim klikom to “gurnuti” na produkcioni:

"Guranje" izmena na produkciju, sa staging kopije sajta
“Guranje” izmena na produkciju, sa staging kopije sajta
Slika 10


Napomena (za svaki slučaj): pre nego što krenete u kloniranje, ili pravljenje staging kopije, proverite da li imate dovoljno prostora na cPanel/DirectAdmin nalogu.


3. Zaključak

Ovo je dosta dobro urađen i praktičan alat. Sa iznenađujuće malo bagova, s obzirom na broj opcija i platformi koje podržava.

Uvek preporučujem testiranje svih izmena i ažuriranja tema/plagina na staging kopiji sajta, pre diranja produkcionih sajtova. Softaculous omogućava i apsolutnim početnicima da veoma lako, praktično sa par klikova, ovo urade – tj. da naprave staging kopiju, i da izmene sa nje kasnije “guraju” na produkciju. Neki hosting provajderi, poput SiteGround-a, dosta skupo naplaćuju hosting pakete koji ovo omogućavaju (na slično lak način).

Većina drugih opcija su manje korisne od ove (po mom mišljenju). Tu naročito mislim na bekape, jer postoje bolja rešenja za kreiranje bekapa sajta.

U svakom slučaju – vredi igrati se sa Softaculous. Nadam se da vam je ovaj članak bio interesantan barem koliko i meni igranje sa ovim alatom i pisanje o tome. A nadam se da će nekom ovo i koristiti (osim meni, kao podsetnik). 🙂


4. Primer 1 – kloniranje / migracija sajta pomoću Softaculous

Primer kloniranja sajta sa https://dev10.bikegremlin.com (izvorni sajt) na https://www.askaandwolf.com (klonirani sajt), u ovom slučaju sa DirectAdmin na cPanel šerovanog hostinga (mada je procedura praktično identična i za ostale kombinacije ova dva kontrolna panela).

Prvo konfigurišite hosting server na koji želite klonirati sajt. Kada odete na link iz prethodne rečenice, preskočite izmene u .htaccess fajlu za sada – to treba uraditi nakon što se kloniranje završi.

Ako ste pravili bilo kakve izmene nameserver-a, ili u DNS-u, sačekajte oko 24 časa pre bilo kakvog kloniranja (osim ako barem 24 časa, ili duže, za domen na koji se klonira koristite Cloudflare DNS, koji puno brže propagira ove promene).

Sledeće: proverite da li postoji, i ako postoji obrišite (ili preimenujte) fajl “.htaccess” u public_html direktorijumu (kako podesiti cPanel fajl menadžer da prikazuje skrivene fajlove).

Preimenujte, ili obrišite htaccess fajl, iz public_html direktorijuma
Preimenujte, ili obrišite “.htaccess” fajl, iz “public_html” direktorijuma
Slika 11

Kada ste sve to uradili, pokrenite Softaculous, kako je prikazano u poglavlju 2.1. Zatim izaberite opciju “Import”:

Biranje "Import" opcije na Softaculous WordPress management home ekranu
Biranje “Import” opcije na Softaculous WordPress management home ekranu
Slika 12


Sada treba izabrati “From Remote Server” i konfigurisati opcije za kloniranje sajta:

Konfigurisanje opcija za kloniranje sajta u Softaculous alatu
Konfigurisanje opcija za kloniranje sajta u Softaculous alatu
Slika 13


Potrebno je da pripremite (znate) sledeće informacije:

  • Domen sajta sa kojeg klonirate.
    dev10.bikegremlin.com u ovom slučaju.
  • Protokol preko kojeg se vrši kopiranje – FTP, FTPS (sigurnije), ili SFTP (najsigurnije) – i podatke za pristup serveru SA kojeg klonirate sajt – (2) na slici 13.
    U ovom slučaju to su ftp.bikegremlin.com, koristimo FTPS (na portu 21), a korisničko ime je whadayaknow (i lozinka za tog korisnika je unešena u polje ispod tog imena korisnika).
  • Putanju na kojoj se fajlovi nalaze, na serveru SA kojeg klonirate – (3) na slici 13.
    U ovom slučaju server na kojem je dev10.bikegremlin.com, a putanja je:
    /domains/dev10.bikegremlin.com/public_html
    Videti uobičajene putanje fajlova za DirectAdmin i cPanel.
  • Gde želite da se sajt klonira.
    U ovom slučaju na https://www.askaandwolf.com – (4) na slici 13.

Nakon što ste uneli sve potrebne podatke (proverte… dvaput… ozbiljno), kliknite na plavo “Import” dugme koje se nalazi u dnu ovog ekrana (nije prikazano na slici 13 kako bi se uštedelo dosta prostora na ekranu).

Ako ste preskočili neki korak i niste obrisali fajl “.htaccess” (ili druge fajlove) iz “public_html” direktorijuma, može se pojaviti ovakva greška:

Greška ako direktorijum nije prazan
Greška ako direktorijum nije prazan
Slika 14


Ako se to desi, krenite od početka ovog (4.) poglavlja, bez preskakanja koraka. Polako, strpljivo.

Kada je sve podešeno kako treba, javiće da vrši kloniranje – i u 99% slučajeva “zakucati” na 95%. 🙂

Softaculous kloniranje zakucano na 95%... baš kao i mnogi web-development/programerski projekti... :)
Softaculous kloniranje zakucano na 95%… baš kao i mnogi web-development/programerski projekti… 🙂
Slika 15


Nemojte paničiti. Za nekih pola sata, sat, u zavisnosti od veličine sajta, brzine hosting servera i kvaliteta njihove Internet konekcije, biće gotovo.

Kloniranje sajta je završeno - možete se vratiti na glavni ekran
Kloniranje sajta je završeno – možete se vratiti na glavni ekran
Slika 16


U slučaju da se poruka sa slike 16 ne pojavi, već da slika 15 stoji više od pola sata, slobodno zatvorite cPanel i sačekajte još pola sata. Zatim se ulogujte u cPanel i pogledajte da li je veličina paze porasla na, barem približno, veličinu baze originalnog sajta (onog koji se klonira, u ovom slučaju dev10.bikegremlin.com).

Provera veličine baze:

Provera veličine baze u cPanel-u - (1) se ne ažurira u realnom vremenu, tako da je (2) obično tačnije
Provera veličine baze u cPanel-u – (1) se ne ažurira u realnom vremenu, tako da je (2) obično tačnije
Slika 17


U slučaju da sajt clonirate na hosting sa DirectAdmin kontrolnim panelom, kao i za proveru veličine baze izvornog sajta, ako je na tom panelu, ovako se proverava veličina baze u DirectAdmin-u:

Kliknite na ikonu "MySQL Management" (1), i otvoriće se prozor koji pokazuje veličinu baze (2)
Kliknite na ikonu “MySQL Management” (1), i otvoriće se prozor koji pokazuje veličinu baze (2)


Kao što vidite, slike 17 i 18 pokazuju baze dosta različitih veličina. Da su ovo baze izvornog, i kloniranog sajta, značilo bi da treba još sačekati, dok baza ne poraste barem do 30+ MB (prilikom kloniranja, može se desiti da baza bude nešto manja, ili nešto veća – postoje alati za optimizaciju baza koji sređuju iste, ali to je tema za neki poseban članak).

Nakon što su veličine izvorne i odredišne baze dostigle približnu veličinu, možete probati otvoriti sajt, u ovom slučaju odlaskom na www.askaandwolf.com. Ako ne radi, ne brinite.

Napomena: nakon kloniranja, WordPress administrator i ostali korisnici će ostati isti. Promeniće se adresa sajta, naravno, i svi interni linkovi. U ovom slučaju sa dev10.bikegremlin.com u www.askaandwolf.com.

Sada, da rešimo problem, ako i dalje ne radi: samo ponovo preimenujte/obrišite fajl “.htaccess” u “public_html” direktorijumu, kao što je objašnjeno na početku ovog poglavlja. Zatim otvorite sajt, idite na “Settings” (u back-end-u), “Permalinks” i samo kliknite “Save Changes” (ne morate ništa menjati). Novi “.htaccess” fajl će biti odmah kreiran.

Snimanje Permalinkova - bez potrebe da išta zaista menjate
Fajnal tač: snimanje Permalinkova – bez potrebe da išta zaista menjate
Slika 19


4.1. Problemi – rešavanje

Često se desi da, čak u slučaju problema, Softaculous ipak napiše da je sve prošlo OK. Logovi koji su dostupni u shared i reseller hosting okruženju po pravilu ne javljaju bilo kakve greške, a kamo li uzroke problema. Ne znam da li Softaculous to igde javlja, tako da barem administratori servera mogu videti o čemu se radi (povratne informacije su dobrodošle).

Kod bilo kakvog kloniranja sajta (ili pravljenja staging kopije), prva stvar koju radim je provera veličine baze izvornog i kloniranog sajta (objašnjenje te procedure u 4. poglavlju).

Sa jednim takvim problemom sam se sreo upravo u primeru iz 4. poglavlja. Kloniranje sajta na cPanel nalog za askaandwolf.com jednostavno nije htelo proći. Kako sam to rešio?

Po mom iskustvu, ako se cPanel nalog kreira za goli domen (askaandwolf.com), a www. varijanta se definiše kao alias domen (CNAME), kloniranje na www. verziju sajta (www.askaandwolf.com) neće raditi! Rešenje?

  • Napraviti poddomen na istom cPanel-u (poput: clone01.askaandwolf.com). I instalirati SSL/TLS sertifikate za taj poddomen, kao i podesiti DNS za njega (cPanel i DirectAdmin će ovo automatski uraditi, a ovako se podešava DNS za Cloudflare – ako njega koristite).
  • Klonirajte sajt na taj poddomen (ako koristimo izvorni domen iz 4. poglavlja, to bi bilo: sa dev01.bikegremlin.com na clone01.askaandwolf.com). Procedura je praktično ista kao što je objašnjeno u 4. poglavlju, samo je odredište https://clone01.askaandwolf.com.
  • Zatim klonirajte ponovo, ovaj put u istom cPanel-u, sa clone01.askaandwolf.com na https://www.askaandwolf.com (videti: goli domen, ili www – šta je bolje?). Trebalo bi da sve prođe kako treba. Kasnije možete iskoristiti Softaculous da napravite staging kopiju sajta.
Kloniranje (lokalno) klona, pomoću Softaculous-a :)
Kloniranje (lokalno) klona, pomoću Softaculous-a 🙂
Slika 20


Opet, slično kao što smo radili u 4. poglavlju:

Završavanje kloniranja kloniranog sajta
Završavanje kloniranja kloniranog sajta
Slika 21


Ako nakon uspešnog kloniranja izaberemo opciju za pravljenje staging kopije “glavnog” sajta (www.askaandwolf.com u ovom slučaju), dobićemo ovako nešto:

Konačan rezultat - nakon kloniranja i kreiranja staging kopije sajta
Konačan rezultat – nakon kloniranja i kreiranja staging kopije sajta
(1) staging kopija sajta www.askaandwolf.com
(2) klon – sa kojeg smo kopirali na www.askaandwolf.com
(3) klon se sada može obrisati
Slika 22


4.1.1. Problemi sa (firewall?) zaštitom provajdera

Ovo još nisam u potpunosti “prokljuvio”, ali postavljam dostupne informacije – više kao lični podsetnik. O čemu se radi. Poslednjih 30ak dana počeli su se javljati problemi sa importovanjem sajtova sa servera provajdera koje koristim. Hostinzi u pitanju su HostMantis i MyW.pt. Do sada su bili dosta dobri, sa tehničkom podrškom koja se trudi otkriti i rešiti problem, čak i mimo uskog opsega svog posla (moj članak o tehničkoj podršci hosting provajdera – generalno).

Ovo su problemi sa kojima sam se susreo:

  • Import sajta sa HostMantis UK servera na HostMantis US server – ne radi (isto važi i u obrnutom smeru).
  • Import sa HostMantis servera na MyW.pt server – ne radi.
  • Import sa MyW.pt servera na HostMantis server – ne radi.

Nakon pokušavanja različitih stvari sa HostMantis i MyW.pt tehničkom podrškom, ovo su poslednje informacije koje sam dobio (od HostMantis) – moj prevod i boldovanje delova teksta:

Testirali smo ovu opciju i videli da je problem u broju simultanih konekcija koje Softaculous pokušava uspostaviti dok radi import, koji prouzrokuje da udaljeni server privremeno blokira konekcije i zato se ne mogu svi fajlovi uspešno presnimiti.

Nažalost, tu ne možemo ništa, pošto su naši serveri podešeni da blokiraju FTP brute force napade, pa ćemo onemogućiti korištenje ove opcije kako bismo izbegli zabunu.

Uz sugestiju da koristim preporučeni plagin za migraciju koji je testiran na njihovom server okruženju i radi (All-in-One WP Migration). Što je meni puno manje praktično, čak i sa plaćenim verzijama takvih plaginova. Uz to, nemam previše poverenja u plaginove za bekap/migraciju – jer tu u principu aplikacija treba samu sebe da bekapuje. Mislim da je puno bolje i sigurnije da se to radi preko samog servera, pomoću druge aplikacije (poput Softaculous). Ovo, ako se uradi kako treba, bi trebalo da puno manje opterećuje i sam hosting server. To je barem moje viđenje i razlog zašto sam ove povratne informacije prosledio i Softaculous podršci, da barem uradim što je do mene da to proradi (mada sam pesimista – ovo je tipičan Kvaka-22 scenario 🙂 ).


Molim Vas da koristite BikeGremlin.net forum za sva pitanja i komentare.

Ako ste primetili neku grešku u članku, ili informacije koje nedostaju - molim Vas da mi na to skrenete pažnju komentarom na BikeGremlin forumu.
Na forumu možete pisati anonimno (stavite bilo koje ime/nadimak pri registraciji), ali mislim da je dobro da sve dopune i ispravke članaka budu javno dokumentovane (čak i ako njihov autor izabere da ostane anoniman).

Skip to content