Promocja: pl – 5 PLN/rok | eu – 5 PLN/rok | com – 40 PLN/rok
Sztuczna Inteligencja w wyszukiwarce domen Aktywuj
Certyfikat SSL z szyfrowaniem ECDSA -60% Zamów

Technologia Node.js

Czym jest Node.js?

Node.js to środowisko, które umożliwia uruchamianie programów pisanych w języku JavaScript poza przeglądarką internetową, na poziomie serwera. Node.js działa w oparciu o stworzony przez Google silnik V8 oraz korzysta z dużej liczby dodatkowych modułów, które można wykorzystywać jako szkielety tworzonych aplikacji, aby przyspieszyć proces jej tworzenia. Dzięki Node.js nawet bardzo złożone systemy mogą działać szybko i sprawnie, ponieważ aplikacje uruchamiane są na serwerze, a do przeglądarki wysyłany jest tylko wynik ich pracy.

Największą zaletą Node.js jest umożliwienie użytkownikom wygodnego i prostego tworzenia zaawansowanych programów, takich jak gry sieciowe (multiplayer) czy aplikacje giełdowe, które wyświetlają dane i aktualizacje w czasie rzeczywistym. Bardzo ważnym elementem, przyspieszającym pisanie programów w Node.js, są frameworki. Jest to rodzaj często bardzo rozbudowanych szkiców aplikacji, które sprawiają, że nie trzeba pisać całego kodu programu od podstaw, a jedynie wystarczy skorzystać z już gotowych funkcjonalności, które te szkice oferują. Wykorzystywanie ich możliwości pozwala skrócić czas budowania aplikacji, skupiając się tylko na jej układzie, logice i działaniu.

Na hostingu nazwa.pl zostały zainstalowane i automatycznie skonfigurowane frameworki dla front-endu, baz danych i back-endu. Wybierając określoną wersję Node.js, automatycznie konfigurowany jest dostęp do odpowiadających jej frameworków.

Wyboru wersji interpretera Node.js, a także jego włączenia lub wyłączenia dokonuje się w CloudHosting Panelu zarządzania serwerem. W tym celu wejdź na stronę https://admin.nazwa.pl/ (1), wpisz identyfikator serwera oraz jego hasło (2), następnie kliknij przycisk Zaloguj się (3).

CloudHosting Panel logowanie

Jeżeli aktywowałeś zabezpieczenie 2FA dla CloudHosting Panel, wpisz kod wygenerowany w Google Authenticator i Zaloguj się (Sprawdź: Jak skonfigurować zabezpieczenie 2FA dla CloudHosting Panel?).

WIĘCEJ INFORMACJI:Jak ustalić właściwy CloudHosting Panel?

 

Jak włączyć Node.js na hostingu?

Dla domen obsługiwanych na serwerach hostingowych w nazwa.pl domyślnie włączany jest interpreter PHP. Środowisko Node.js włącza się dla wybranej domeny, dokonując zmiany właściwego dla niej interpretera w CloudHosting Panelu.

UWAGA! Dla domeny będącej jednocześnie identyfikatorem serwera (serverXXXXXX.nazwa.pl) nie ma możliwości zmiany rodzaju interpretera. Identyfikator serwera obsługuje wyłącznie interpreter PHP. Z interpretera Node.js można skorzystać dla subdomeny utworzonej w ramach identyfikatora w postaci jakas-nazwa.serverXXXXXX.nazwa.pl, gdzie "jakas-nazwa", to nazwa tej subdomeny.

Jeżeli chcesz zmienić domyślny interpreter dla swojej domeny, po zalogowaniu do CloudHosting Panelu przejdź do zakładki DOMENYWykaz domen (1).

CloudHosting Panel menu domeny wykaz domen

Na wykazie znajdź na adres tej domeny, dla której chcesz wykonać zmianę, i kliknij w jej nazwę. Wyświetlony zostanie formularz edycji domeny. W sekcji Interpreter strony WWW zaznacz checkbox przy opcji Node.js (1), a następnie włącz lub wyłącz dodatkowe opcje programistyczne (2). Po wykonaniu zmian kliknij przycisk Zapisz (3).

CloudHosting Panel domeny node.js ustawienie

Zmiana wersji interpretera, a więc włączenie Node.js, możliwa jest również w chwili dodawania nowej domeny do serwera.

WAŻNE! Włączenie Node.js dla domeny uruchamia dla niej serwer aplikacyjny. Liczba możliwych do uruchomienia serwerów aplikacyjnych uzależniona jest od opcji posiadanego serwera hostingowego. Limit serwerów aplikacyjnych sprawdzić można, klikając przycisk PEŁNA SPECYFIKACJA na stronie produktowej nazwa.pl, np. https://www.nazwa.pl/hosting/.

 

Jak zmienić wersję Node.js?

W celu zmiany wersji Node.js należy przejść, w CloudHosting Panelu, do zakładki WWW I FTP i wybrać opcję PHP i Node.js (1).

CloudHosting Panel menu php i node.js

W sekcji Konfiguracja Node.js wybierz z listy rozwijanej (1) właściwą wersję interpretera i zapisz zmianę.

Pamiętaj, aby zawsze korzystać z najnowszych dostępnych wersji Node.js. Na serwerach CloudHosting możesz wybrać edycje 18 LTS i 20 LTS, które posiadają aktywne wsparcie realizowane przez wydawców tego oprogramowania. Jeśli z jakiegoś powodu Twoja strona musi używać starszej, nie wspieranej już przez wydawców wersji Node.js, skorzystaj z usługi dodatkowej ”Obsługa starszych wersji Node.js” na swoim serwerze. Zyskasz wówczas dostęp do takich wydań, jak: 12 LTS, 14 LTS, 15 i 16 LTS. Usługę możesz aktywować klikając w link Aktywuj obsługę starszych wersji Node.js (2) w CloudHosting Panel lub wybierając odpowiednią opcję w Panelu Klienta (Sprawdź: Obsługa starszych wersji Node.js).

CloudHosting Panel konfiguracja node.js

Co istotne, wersja Node.js ustawiania jest globalnie dla całego serwera. Nie ma możliwości ustawienia różnych wersji dla poszczególnych domen w ramach tego samego serwera. Zmiana wersji Node.js powoduje również zmianę odpowiednich dla danej wersji interpretera dostępnych frameworków.

 

Jak zrestartować serwer aplikacyjny Node.js?

Po wykonaniu zmian w aplikacji wykorzystującej Node.js i umieszczeniu jej na serwerze, należy wykonać jej restart. Restart taki możliwy jest do wykonania poprzez dodatkową opcję widoczną przy adresie domeny w CloudHosting Panelu. W tym celu przejdź do zakładki DOMENYWykaz domen, odnajdź na liście domenę, dla której chcesz wykonać restart aplikacji, a następnie kliknij odnośnik Zrestartuj serwer Node.js (1).

CloudHosting Panel domeny wykaz zrestartuj nodejs

Restart możliwy będzie również przez CLI (narzędzie Command Line Interface), z użyciem komendy nodecli. Należy zatem wpisać:

nodecli restart

Kolejną możliwością restartu jest wykonanie, poprzez połączenie SSH, polecenia touch na pliku restart/restart.txt. Katalog restart i pusty plik restart.txt należy wcześniej utworzyć w tym katalogu, na który została przekierowana domena. Restart należy wykonać poleceniem:

touch restart/restart.txt

Efekt polecenia widoczny będzie przy pierwszym wywołaniu aplikacji od chwili zapisu pliku restart.txt.

 

Lista domyślnie dostępnych frameworków Node.js na serwerach nazwa.pl:
  • Express.js - najczęściej wybierany przy tworzeniu interfejsów API, swą popularność zawdzięcza doskonałej wydajności, jest skalowalny i w pełni konfigurowalny;
  • Koa.js - umożliwia projektowanie i tworzenie aplikacji Node.js z większą wydajnością obsługi błędów;
  • Socket.io - framework używany do tworzenia aplikacji, takich jak chatboty lub aplikacje do wideokonferencji;
  • Nest.js – framework, który pozwala na tworzenie skalowalnych aplikacji serwerowych;
  • Sails.js - framework bardzo wysokiego poziomu, pozwalający na szybką budowę kompletnego back-endu dla aplikacji webowej, obejmujący takie koncepcje, jak np. REST czy HTTP, pozwalający na rozwój interfejsów API;
  • Total.js - framework podobny do Laravel (PHP) czy Django (Python), wykorzystywany do budowy stron internetowych, aplikacji e-commerce czy aplikacje IoT;
  • Hapi.js - stanowi doskonałą platformę dla dużych i rozproszonych zespołów zarządzających jednocześnie wieloma zadaniami i świetnie sprawdzi się w pracach projektowych.

a także: Derby.js, LoopBack.io oraz Adonis.js.

 

Npm – manager pakietów dla środowiska Node.js

Dodatkowe moduły wykorzystywane przez aplikację Node.js można wgrać na 2 sposoby:

  • ręcznie na serwer przy użyciu protokołu FTP lub SSH;
  • skorzystać z funkcjonalności npm wykonując przez SSH polecenie:
  • npmXX install -g nazwa_modułu

    gdzie npmXX wpisz nazwę managera pakietów Npm odpowiadającego wykorzystywanej przez Ciebie wersji Node.js, np. npm18 czy npm20.

Moduły ściągnięte przez Npm będą domyślnie zapisane w katalogu „.node”, a w nim:

- katalog „18” (odpowiadających wersji 18 Node.js, tu będą zapisywały się moduły dla wersji 18)

- katalog „20” (odpowiadających wersji 20 Node.js, tu będą zapisywały się moduły dla wersji 20)

 

Projekt Node.js

Katalogiem głównym projektu Node.js jest katalog w którym znajduje się plik wykonywalny, czyli plik app.js. Katalog ten to DocRoot i AppRoot - konfiguracji tej nie można modyfikować. Statyczne pliki powinny być również umieszczone w katalogu głównym aplikacji, nie będzie na nie wydzielonej odrębnej przestrzeni.

Chcąc uruchomić aplikację przez wiersz poleceń, należy to zrobić, wywołując właściwą wersję Node.js, np:

node18 app.js
node20 app.js

Przykład:

Domena: node.js1.server000000.nazwa.pl

Katalog główny projektu: /node.js1

Plik wykonywalny w katalogu głównym: app.js

Prosta aplikacja:

var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World !');
}).listen(8080);

 

Logi aplikacji

Logi dla Phusion Passenger są zapisywane w katalogu /tmp i są dostępne przez SSH.

Table of Contents