Kako instalirati i koristiti Node.js na poslužitelju Smarthost Za korištenje Node.js potreban je pristup SSH-u. Pristup se može uključiti putem Korisničkog profila https://www.smarthost.hr/panel/login za sve hosting račune, s iznimkom paketa base-mikro. Potrebno je kliknuti na ikonu povećala pokraj usluge, a potom na gumb Uključi SSH. Paket ne može biti u probnoj verziji (mora biti plaćen).
Instalacija
- Povezujemo se s SSH-om korištenjem porta u korisničkom profilu. Za to možemo koristiti program Putty.
- Upisujemo
cd
i pritišćemo enter
- Upisujemo:
wget https://nodejs.org/dist/v8.9.4/node-v8.9.4-linux-x64.tar.xz
i pritišćemo enter
- Potom:
tar -xJf node-v8.9.4-linux-x64.tar.xz
- Naziv raspakiranog direktorija možemo zamijeniti naredbom:
mv node-v8.9.4-linux-x64 nodejs - Stvaramo bin direktorij u svom korisničkom profilu
mkdir bin - Tamo kopiramo aplikaciju Node:
cp ./nodejs/bin/node ./bin - Ulazimo u bin direktorij:
cd ./bin
- Stvaramo simboličku poveznicu
ln -s ../nodejs/lib/node_modules/npm/bin/npm-cli.js npm
- Node i npm su instalirani, možemo upisati:
node –version
Trebalo bi se prikazati:
v8.9.4
a kao naredbu:
npm –version
Prikazuje se:
5.6.0
Naredbe node i npm radit će iz svakog direktorija zahvaljujući pohrani u bin direktoriju
Pokretanje aplikacije:
Ulazimo u direktorij u koji smo pohranili aplikaciju te potom upisujemo:
nohup node aplikacja.js &
Zbog & se aplikacija pokreće u pozadini, dok nohup osigurava funkcioniranje aplikacije nakon prijave
Alternativno:
- Upisujemo naredbu screen i potvrđujemo tipkom enter
- Pokrećemo našu aplikaciju npr. node aplikacja.js
- Pritisnemo tipke ctrl i a
- Potom pritisnemo d
- Naš ekran će preći u pozadinski rad
- Možemo se vratiti putem naredbe screen -x
Isključivanje aplikacije: Upisujemo:
pkill node
i pritisnemo enter.
Alternativno:
- Vraćamo se na ekran pomoću screen -x
- Zatvaramo našu aplikaciju nadredbom proces.exit()
- Ekran možemo zatvoriti naredbom exit
Preusmjeravanje u aplikaciju Node.js po ulasku kroz preglednik
Umećemo daljnja pravila u datoteku .htaccess (tu datoteku stvaramo u direktoriju domene, npr. public_html/klijentska-domena.hr):
DirectoryIndex disabled
RewriteEngine On
RewriteRule ^$ http://127.0.0.1:PORT/ [P,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://127.0.0.1:PORT/$1 [P,L]
Umjesto PORT upisujemo broj iz raspona od 49152 do 65534. Ako je drugi Klijent zauzeo port, biramo sljedeći sve dok aplikacija ne proradi na njemu. Također je potrebno imati na umu istovjetan port postaviti u aplikaciji Node.js
Sada je dovoljno ući u našu domenu, a prikazat će nam se stranica koju poslužuje Node.js
Preusmjeravanje na sigurnu https poveznicu s SSL cPanelom
Također možemo preusmjeriti kretanje poslužiteljem na sigurnu https poveznicu. Pažnja! Server Node.js pokrećemo kao http, a ne https. Https poveznicu osigurava naš server Apache.
Certifikat cPanel se automatski generira nakon dodavanja domene kroz Dodatne domene u Cpanelu, pa se ne morate zamarati instalacijom i konfiguracijom SSL certifikata.
Koristi sljedeći sadržaj datoteke .htaccess za prisilno preusmjeravanje (mijenjajući PORT na količu iz gore navedenog iznosa):
DirectoryIndex disabled
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule ^$ http://127.0.0.1:PORT/ [P,L]
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://127.0.0.1:PORT/$1 [P,L]
RewriteCond %{HTTPS} !=on
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/[0-9a-zA-Z_-]+$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Podrška za WebSockets
Kako bi protokol ws:// ispravno funkcionirao, potrebno je stvoriti pravila u .htaccess, npr. za biblioteku socket.io potrebno je dodati sljedeće retke pod retkom “RewriteEngine On” (pritom zamjenjujući PORT ranije odabranom količinom):
RewriteCond %{REQUEST_URI} ^/socket.io [NC]
RewriteCond %{QUERY_STRING} transport=websocket [NC]
RewriteRule /(.*) ws://localhost:PORT/$1 [P,L]
Registriraj besplatni probni račun na poslužitelju Smarthost.hr i provjeri kako funkcionira Node.js.
- Kako instalirati WP-CLI na poslužiteljima smarthost.hr? - 13 srpnja, 2023
- Prijenos domene na Smarthost.hr - 13 srpnja, 2023
- SPF mehanizam za preusmjeravanje pošte (forward), odnosno SRS na poslužiteljima Smarthost.hr - 13 srpnja, 2023