Railway i Heroku su cloud platforme za deploy web aplikacija — popularni za Node.js, Python, Ruby i PHP projekte. Obe platforme su krenule s besplatnim planovima koji su se postupno ukinuli ili ograničili, pa mnogi korisnici traže alternativu. U ovoj uputi pokazujemo kako prebaciti projekt na vlastiti hosting.
Korak 1: Preuzmi kod
Obje platforme koriste Git za deploy:
- Railway: Projekt je povezan s GitHub repozitorijem — kloniraj ga s GitHuba
- Heroku: Kod možeš preuzeti putem Heroku Git-a:
heroku git:clone -a ime-aplikacijeili s GitHuba ako si ga tamo povezao
Korak 2: Identificiraj što prebacuješ
Railway i Heroku obično hostaju full-stack aplikacije. Važno je razumjeti strukturu:
- PHP aplikacija (Laravel, WordPress, vanilla PHP): Direktno radi na shared hostingu — najlakša migracija
- Node.js (Express, Fastify, Next.js): Shared hosting ne podržava Node.js. Opcije: prebaci na VPS/dedicated server, prepiši backend na PHP, ili razdvoji frontend (statički na hosting) i backend (ostavi na Railway free tier ili prebaci na VPS)
- Python (Django, Flask): Ista situacija kao Node.js — shared hosting ne podržava Python runtime, ali VPS da
- Statični frontend + API backend: Frontend prebaci na hosting, backend ostavi ili prebaci na VPS
Korak 3: Exportaj bazu podataka
Railway PostgreSQL:
- U Railway dashboardu klikni na svoju bazu
- Pod Connect pronađi connection string
- Exportaj:
pg_dump DATABASE_URL > baza.sql
Railway MySQL:
- Pronađi MySQL connection podatke u Railway dashboardu
- Exportaj:
mysqldump -h HOST -u USER -p DATABASE > baza.sql - MySQL dump možeš direktno importirati u cPanel phpMyAdmin
Heroku Postgres:
heroku pg:backups:capture -a ime-aplikacijeheroku pg:backups:download -a ime-aplikacije
PostgreSQL → MySQL konverzija: Ako platforma koristi PostgreSQL, a hosting MySQL — trebat će konverzija. Za manje baze koristi alat pgloader ili ručno prilagodi SQL. Za veće baze, javi nam se na info@wmd.hr.
Korak 4: Pripremi PHP projekt za hosting
Ako je tvoj projekt u PHP-u (Laravel, WordPress, custom):
- Ažuriraj
.envdatoteku s novim podacima za bazu (localhost, novo korisničko ime i lozinka) - Uploadaj projekt u
public_html— za Laravel,public/mapa ide upublic_html, ostalo izvan nje - Postavi odgovarajuću PHP verziju u cPanelu (Software → MultiPHP Manager)
- Pokreni migracije ako je potrebno: preko SSH (
php artisan migrate) ili importiraj SQL dump
Korak 5: Upload na hosting
- FTP: FileZilla za upload u
public_html - Git deploy: cPanel Git Version Control — isti repo koji je koristio Railway/Heroku
- SSH: Ako imaš SSH pristup, kloniraj repo direktno na server
Korak 6: Environment varijable
Railway i Heroku koriste env varijable za konfiguraciju. Na hostingu:
- PHP/Laravel: Kreiraj
.envdatoteku u root direktoriju projekta - WordPress: Ažuriraj
wp-config.php - Database: Host je
localhost, korisničko ime i lozinka su oni iz cPanela
Sve env varijable iz Railway/Heroku dashboarda prebaci u odgovarajuću config datoteku.
Korak 7: Domena i SSL
- U Railway/Heroku dashboardu ukloni custom domenu
- Usmjeri domenu na WMD hosting
- Aktiviraj SSL certifikat u cPanelu
- Testiraj — kad sve radi, obriši Railway/Heroku servis
Trebaš pomoć s migracijom? Javi nam se na info@wmd.hr ili putem live chata — tu smo 24/7.