Jak zainstalować i używać Node.js na serwerze Smarthost
Aby móc korzystać z Node.js wymagany jest dostęp SSH. Dostęp można włączyć poprzez Panel Abonenta https://www.smarthost.pl/panel/login dla wszystkich kont hostingowych, za wyjątkiem pakietu base-mikro. Należy kliknąć ikonę lupy przy usłudze, a następnie przycisk Włącz SSH. Pakiet nie może być w wersji testowej (musi być opłacony).
Instalacja
1. Łączymy się z SSH używając portu 222. Możemy w tym celu użyć programu Putty.
2. Wpisujemy
cd
i wciskamy enter
3. Wpisujemy:
wget https://nodejs.org/dist/v8.9.4/node-v8.9.4-linux-x64.tar.xz
i wciskamy enter
4. Następnie:
tar -xvf node-v8.9.4-linux-x64.tar.xz
5. Możemy zmienić nazwę wypakowanego katalogu na bardziej przyjazną poleceniem:
mv node-v8.9.4-linux-x64 nodejs
6. Tworzymy katalog bin we własnym katalogu domowym
mkdir bin
7. Kopiujemy tam aplikację Node:
cp ./nodejs/bin/node ./bin
8. Wchodzimy do katalogu bin:
cd ./bin
9. Tworzymy dowiązanie symboliczne:
ln -s ../nodejs/lib/node_modules/npm/bin/npm-cli.js npm
10. Node i npm są zainstalowane, możemy wpisać:
node --version
Powinno ukazać się:
v8.9.4
Natomiast dla polecenia:
npm --version
Ukazuje się:
5.6.0
Polecenia node i npm będą działały z każdego katalogu, dzięki umieszczeniu w katalogu bin.
Uruchamianie aplikacji:
Przechodzimy do katalogu, w którym umieściliśmy aplikację a następnie wpisujemy:
nohup node aplikacja.js &
Dzięki & aplikacja będzie uruchomiona w tle, natomiast nohup sprawi, że aplikacja będzie działała po wylogowaniu.
Alternatywnie:
Wyłączanie aplikacji:
Wpisujemy:
pkill node
i wciskamy enter.
Alternatywnie:
Przekierowanie do aplikacji Node.js po wejściu przez przeglądarkę
Umieszczamy następujące reguły w pliku .htaccess (plik ten tworzymy w katalogu domeny np. public_html/domena-klienta.pl):
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]
Zamiast PORT wpisujemy liczbę z zakresu 49152 do 65534. Jeżeli port jest zajęty przez innego Klienta, wybieramy kolejny dopóki aplikacja nie będzie na nim działać. Należy również pamiętać, aby taki sam port ustawić w aplikacji Node.js.
Wystarczy teraz wejść na naszą domenę, a ukaże nam się strona serwowana przez Node.js.
Przekierowanie na bezpieczne połączenie https z SSL cPanel
Możemy też przekierować ruch z serwerem na bezpieczne połączenie https. Uwaga! Serwer Node.js uruchamiamy jako http, a nie https. Połączenie https zapewnia nasz serwer Apache. Certyfikat cPanel generuje się automatycznie po dodaniu domeny poprzez Domeny dodatkowe w cPanelu, nie musisz więc martwić się instalacją i konfiguracją certyfikatu SSL.
Użyj następującej zawartości pliku .htaccess aby wymusić przekierowanie (zmieniając PORT na liczbę z zakresu podanego powyżej):
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]
Obsługa WebSockets
Aby protokół ws:// działał prawidłowo, należy utworzyć reguły w .htaccess, przykładowo dla biblioteki socket.io należy dodać poniższe linijki pod linijką "RewriteEngine On" (zmieniając PORT na wybraną wcześniej liczbę):
RewriteCond %{REQUEST_URI} ^/socket.io [NC]
RewriteCond %{QUERY_STRING} transport=websocket [NC]
RewriteRule /(.*) ws://localhost:PORT/$1 [P,L]
Załóż bezpłatne konto testowe na serwerze Smarthost.pl i sprawdź jak działa Node.js.
Serwery dns:
dns.smarthost.pl (91.211.220.10)
dns2.smarthost.pl (193.93.88.10)
dns3.smarthost.pl (94.23.189.130)
Serwer pocztowy:
Serwerem pocztowym dla konta jest nazwa domeny głównej lub dowolnej z domen podpiętych do konta hostingowego.
Adres serwera poczty wychodzącej i przychodzącej
z zainstalowanym certyfikatem SSL: nazwakonta.smarthost.pl
czytanie poczty przez www: NAZWAKONTA.smarthost.pl/poczta
(NAZWA KONTA to login do Państwa konta hostingowego)
pomoc techniczna 24h: helpdesk.smarthost.pl
Nasza własna serwerownia, zlokalizowana w Polsce podłączona jest do internetu wieloma niezależnymi łączami wysokiej niezawodności połączonymi protokołem BGP.

Wszystkie usługi na naszych serwerach działają w pełni automatycznie: zakładanie serwerów wirtualnych i rejestracja domen mogą być opłacone online - dostępne są dla Klientów natychmiast po rejestracji.


Nasze usługi hostingowe oparte są o sprawdzone oprogramowanie najwyższej jakości: panel zarządzania usługami cPanel v.11 w polskiej wersji językowej oraz system o wyjątkowej stabilności CloudLinux z technologią LVE.

Za każdą technologią stoją ludzie. Nasi administratorzy oraz programiści stale czuwają nad sprawnością Państwa usług. Nasza firma dysponuje odpowiednim potencjałem osobowym, żeby spełniać Państwa oczekiwania.
Oferta naszej serwerowni to pełen wachlarz usług hostingowych, dopasowanych do potrzeb i wymagań klientów biznesowych:
Smarthost sp. z o.o.
ul. Partyzantów 1
42-217 Częstochowa
tel. 34 390 66 66
hosting@smarthost.pl
Wykres aktualnej przepustowości hostingu
