NB! cPanel serveritel käib NPM kasutamine ainult Node’i environmenti kaudu. Sinna sisenemiseks tuleks kõigepealt luua cPanel kaudu uus NodeJS äpp kas vastavast rakendusest või käsurealt vastavalt alltoodud juhenditele ning kasutada kuvatavat source käsku käsureal!
1. Node.JS installimine cPaneli jagatud veebimajutuse kontole
1. Logi oma cPaneli kontole
2. Lisa oma node script soovitud domeeni või alamdomeeni doc_root’i (uue äpi loomise korral seda sammu teha vaja ei ole)
3. Liigu cPanelis kohta:
cPanel -> SOFTWARE -> Setup Nodejs app -> Create application
4. Vali:
– NodeJS versioon – mida su äpp kasutab
– Kas on tegemist DEVELOPMENT või PRODUCTION äpiga
– App root on sama mis app url – ehk alamdomeen või domeen, mille all äpp jooksma peaks
– Startup file on fail mis käivitatakse sinu äpil/käivitab äpi.
5. Kliki CREATE – luuakse vastavad käivitamisskriptid ja lisatakse vajalikud süsteemsed muutujad kontole.
Minnes tagasi eelmisele lehele, saate oma äppi käivitada/sulgeda/restartida/muuta
2. Näidis-skript nodejs rakenduse kasutamisel veebis
(NB! Kood on toodud näidisena “as-is” põhimõttel. Koodi käivitamine ja/või sellest tuleneva võimaliku toimimatuse/toimimise/kahju on selle koodi kasutaja omal vastutusel! Otse domeenikaustast ja ĂĽhe äpi korral võib pordiks määrata ka 0 – mitme äppi ja alamkaustade korral on soovituslik määrata eraldi port!)
1. Lisa soovitud Node.JS käivitamise veebikausta .htaccess fail (näidises on kasutatud public_html ehk domeeni juurkausta!):
RewriteEngine On RewriteRule ^$ http://127.0.0.1:8080/ [P,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ http://127.0.0.1:8080/$1 [P,L]
2. Loo näidisfail (näiteks test.js):
var http = require('http') http.createServer(onRequest).listen(8080); console.log('Server has started'); function onRequest(request, response){ response.writeHead(200); response.write('!!!!!TESTRAKENDUS TOIMIB!!!!!'); response.end(); }
3. Käivita cPaneli kaudu oma testscript
4. Mine oma domeeni veebiaadressile (vajadusel ja lisa lõppu “public” kaust)
Näidisena http://teiedomeeninimi.ee/ või http://teiedomeeninimi.ee/public/
Veebilehel peaks seega nĂĽĂĽd kuvatama:
“!!!!!TESTRAKENDUS TOIMIB!!!!!”
– kui te ei soovi eraldi public kausta kasutada url’is, võite vastava suunamise teha .htaccess failiga:
RewriteEngine On #RewriteBase /public/ RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ http://127.0.0.1:8080/public/$1 [P,L]
NB! Näidises on kasutatud porti 8080 – Rangelt soovituslik on kasutada mõnda muud porti vahemikus 49152 ja 65535
(Vastasel juhul võite sattuda kasutama kellegi teise Node.JS rakendust, mis on suunatud kasutama kindlat localhosti porti!)
Lisainfot:
– Kui teie rakendus ei käivitu teie valitud pordil, tähendab et see port on juba kasutusel – valige mõni muu port!
– Kui port on juba kasutusel, soovitame valida uue pordi ja muuta selle nii seadistuste failis kui ka .htaccess failis!
3. Node.JS installimine cPaneli jagatud veebimajutuse kontole käsurealt
(NB! Tegemist on näidisega ja soovitatav on alati teha NodeJS install punktis 1. mainitud rakenduse kaudu cPanel kontolt!)
1. Logi oma cPaneli kontole SSH kaudu või cPanel konto kaudu Terminali rakendusse
2. Käivita käsk:
cloudlinux-selector create --json --interpreter nodejs --version 12 --app-root apikaust --domain nodetest.teiedomeeninimi.ee --app-uri /
Kus siis:
–version kohal olev number 12 vaheta endale sobiliku versiooniga. Hetkel on meil kasutatavad versioonid:
–app-root kohal olev “apikaust” peaks olema siis kausta asukoht sinu veebimajutusekontol (Näitena lisadomeeni korral siis kujul domains/lisadomeeninimi/public_html)
–domain kohal olev domeeninimi peaks olema kasutatava domeeni nimi
–app-uri kohal peaks olema domeeni veebikausta korral / ja näiteks “apitest” nimelise alamkausta korral /apitest
3. Loo Node äpile sätete fail:
cd ~/apikaust nano package.json
(Kus siis /apikaust on sinu poolt varem määratud kaust)
4. Lisa faili kood ja salvesta:
{ "name": "minuapp", "version": "1.0.0", "description": "Minu Ă„pp", "main": "app.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC" }
5. Installi vajalikud moodulid/lisad ja liiku node environmenti
cloudlinux-selector install-modules --json --interpretecdr nodejs --user rXXXXXXX --app-root apikaust source /home/rXXXXXXX/nodevenv/apikaust/12/bin/activate && cd /home/rXXXXXXX/apikaust
Kus siis:
– rXXXXXXX on sinu cPanel kasutajatunnus
–app-root kohal olev “apikaust” võib olla ka domeeninimena
– number 12 siis varem määratud versiooninumbrina ja peale cd käsklust olev path peab olema täielik tee siis konkreetse äpi veebikausta.
Peale seda saab edukalt kasutada ka npm käsku kui ka muid äpiga toimetamiseks vajalikke käsurea käske!