Socket.IO szerver futtatása
Maga a Socket.IO futtatása az egy JavaScript fájl segítségével történik. A JavaScript fájlt pedig Node.js-t alkalmazva tudjuk lefuttatni.
- Terminálon lépjünk be az adott projekt mappájába, ahol az említett JavaScript fájl található.
- Futtassuk a fájlt a nohup /opt/cpanel/ea-nodejs16/bin/node <JavaScript fájl neve> & parancs segítségével
- A futtatást követően ügyeljünk rá, hogy az exit parancsot vigyük be. Ha ez elmarad akkor a terminál ablak bezárása során a Socket.IO szerver futása megáll.
A futtatás során különböző SSL validációs problémák léphetnek fel (pl. net::ERR_CERT_DATE_INVALID), ezért a JavaScript fájlban meghívott SSL cert.pem és key.pem fájlokat, mindig a legfrissebb tanúsítvánnyal kell ellátni.
cert.pem és key.pem fájlok frissítése
A frissítést bizonyos időközönként el kell végezni. Ez az időpontot az SSL tanúsítvány lejárati dátuma határozza meg. A lejáratot így érdemes feljegyezni és észben tartani (pl. naptári esemény formájában).
- Keressük meg a szerver SSL tanúsítványait, melyek általában a szerver gyökérkönyvtárában találhatóak az ssl mappában.
- Töltsük le a certs mappában található legfrissebb .crt fájlt és nevezzük / formázzuk át cert.pem-re.
- Töltsük le a keys mappában található legfrissebb .key fájlt és nevezzük / formázzuk át key.pem-re.
- Ezt követően cseréljük le a már említett és hivatkozott SSL fájlokat.
Ha a művelet nem volt sikeres akkor a /opt/cpanel/ea-nodejs16/bin/node <JavaScript fájl neve> paranccsal megtekinthetjük, hogy milyen hibát dob a Socket.IO szerver. Lehetséges, hogy már fut egy korábbi Socket szerver azonos porton. Azt, hogy egy adott port használatban van-e azt a sudo lsof -i :<port száma> parancs segítségével tudjuk ellenőrizni.
Ha a korábbi Socket.IO szerver is az adott portot használja akkor zárjuk be azt a kill -9 <port száma> parancs segítségével, majd indítsuk el a szervert a fent látható nohup ... futtatásával.