Poglavlje 15 · 15.5
Postavljanje Node.js aplikacije
Vaš hosting paket ne pokreće samo PHP. Pomoću Setup Node.js App sami postavljate Node.js aplikaciju, primjerice Express aplikaciju ili manji API. Svaka aplikacija dobiva vlastitu Node.js verziju i vlastitu mapu.
Izrada aplikacije
- U DirectAdminu pod Extra Features kliknite na Setup Node.js App.
- Kliknite na CREATE APPLICATION (1).
- Pod Node.js version (1) odaberite verziju. Možete birati između Node.js 9, 16, 20, 22 i 24. Zadano je postavljeno 16, no bolje je odabrati najnoviju verziju koju Vaša aplikacija podržava, jer 9 i 16 više ne primaju ažuriranja.
- Pod Application mode odaberite Development ili Production. Time se postavlja varijabla NODE_ENV. Za aplikaciju koja je u produkciji odaberite Production.
- Pod Application root (2) unesite mapu u koju će doći datoteke Vaše aplikacije, primjerice apps/mijnapp. Odaberite mapu izvan public_html.
- Pod Application URL (3) odaberite domenu i, ako želite, putanju, primjerice api za vasadomena.nl/api. Ako putanju ostavite praznom, aplikacija će raditi na cijeloj domeni.
- Pod Application startup file (4) unesite datoteku kojom se Vaša aplikacija pokreće, poput app.js ili server.js.
- Po potrebi pod Environment variables putem ADD VARIABLE dodajte vlastite postavke.
- Kliknite na CREATE.



Prijenos koda i instalacija paketa
- Prenesite svoj kod u mapu koju ste odabrali pod Application root, pomoću File Managera, FTP-a ili Gita (pogledajte Upload i preuzimanje datoteka i Git: ažuriranje Vaše web stranice iz repozitorija).
- Nalazi li se u toj mapi datoteka package.json? Vratite se tada na Setup Node.js App, kliknite kod svoje aplikacije na olovku za uređivanje i kliknite na Run NPM Install. Paketi će se tada instalirati.
- Kliknite na Restart da biste (ponovno) pokrenuli aplikaciju.
Nakon svake izmjene u svom kodu ponovno kliknite na Restart. U suprotnom će i dalje raditi stara verzija.
Dobro je znati
- Vaša aplikacija mora slušati na portu koji joj dodijeli server. U kodu koristite process.env.PORT, a ne fiksni broj porta.
- Aplikacija radi unutar ograničenja Vašeg paketa (CPU, memorija, procesi; pogledajte Resource Usage: CPU, memorija i procesi). Za zahtjevniju aplikaciju odaberite veći paket.
- Na paketu sa SSH-om (pogledajte SSH Keys i prijava putem SSH-a) na vrhu ekrana Vaše aplikacije nalazi se naredba kojom u Terminalu aktivirate pravu Node.js verziju i mapu. Nakon toga node i npm rade kao i inače.
- Web stranica koju ste izradili pomoću generatora stranica (statički HTML) ne treba Node.js. Nju jednostavno prenesete u public_html.
Često postavljana pitanja
Moja aplikacija prikazuje pogrešku 503.
Aplikacija se ne pokreće. Obično nije ispravna početna datoteka, nedostaju paketi (zaboravili ste Run NPM Install) ili postoji greška u kodu. Pogledajte u mapi svoje aplikacije u datoteci stderr.log poruku o pogrešci.
Smije li moja aplikacija raditi cijeli dan?
Da, sve dok ostaje unutar ograničenja Vašeg paketa. Aplikacija se pokreće kada stigne zahtjev, a nakon određenog vremena bez zahtjeva ponovno se zaustavlja. Aplikacija koja uvijek mora raditi bez posjetitelja, poput bota, bolje odgovara VPS-u.
Moja aplikacija zapela je i ne reagira na Kill ili Restart.
Pričekajte minutu i pokušajte ponovno. Ako ni tada ne uspije, otvorite ticket i navedite naziv svoje aplikacije.
