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 podanego w panelu abonenta. Możemy w tym celu użyć programu Putty.
2. Wpisujemy
cdi wciskamy enter
3. Wpisujemy:
wget https://nodejs.org/dist/v8.9.4/node-v8.9.4-linux-x64.tar.xzi wciskamy enter
4. Następnie:
tar -xJf node-v8.9.4-linux-x64.tar.xz5. Możemy zmienić nazwę wypakowanego katalogu na bardziej przyjazną poleceniem:
mv node-v8.9.4-linux-x64 nodejs6. Tworzymy katalog bin we własnym katalogu domowym
mkdir bin7. Kopiujemy tam aplikację Node:
cp ./nodejs/bin/node ./bin8. Wchodzimy do katalogu bin:
cd ./bin9. Tworzymy dowiązanie symboliczne:
ln -s ../nodejs/lib/node_modules/npm/bin/npm-cli.js npm10. Node i npm są zainstalowane, możemy wpisać:
node --versionPowinno ukazać się:
v8.9.4Natomiast dla polecenia:
npm --versionUkazuje się:
5.6.0Polecenia 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:
pkill nodei wciskamy enter.
Alternatywnie:
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.
Szybkość i wydajność: dyski ssd, http/2, wiele metod cache, bezpłatne przeniesienie danych, bezpłatne certyfikaty SSL
Szybkość i wydajność: wysokie I/O, dużo pamięci RAM, dyski ssd, http/2, bezpłatne certyfikaty SSL, wsparcie techniczne
Bezpieczeństwo i wydajność: pełna separacja, technologia anty-exploitowa, dysk SSD, http/2, bezpłatne certyfikaty SSL.
Wszędzie tam, gdzie wymagana jest duża moc obliczeniowa, możesz wybrać jeden z naszych serwerów dedykowanych w naszej własnej serwerowni zlokalizowanej w Polsce.
Kiedy musisz skonfigurować system operacyjny na naszej platformie hostingowej, dobrym pomysłem jest wybranie własnego VPS z cPanel i dostępem do roota.
Na Smarthost.pl można zarejestrować kilkaset rodzajów domen z całego świata. Nasze ceny są przystępne dla wszystkich. Jesteśmy partnerem NASK.