##Node.jsインストール
さくらVPSでNode.jsが動く環境を作ってみた - Qiita
curl -L git.io/nodebrew | perl - setup
echo 'export PATH=$HOME/.nodebrew/current/bin:$PATH' >> ~/.bash_profile
source ~/.bash_profile
nodebrew install-binary stable
nodebrew use stable
node -v
v14.10.1
##Socket.ioインストール
npm install socket.io
npm -v
6.14.8
##Node.jsでHTTPSサーバ(https://〜)
node.jsによるHTTPSサーバの作り方 - Node.js/JavaScript入門
var https = require('https');
var fs = require('fs');
var ssl_server_key = 'server_key.pem';
var ssl_server_crt = 'server_crt.pem';
var port = 8443;
var options = {
key: fs.readFileSync(ssl_server_key),
cert: fs.readFileSync(ssl_server_crt)
};
Let's EncryptのSSL証明書などの場所 - nwtgck / Ryo Ota
証明書: /etc/letsencrypt/live/ドメイン名/fullchain.pem
秘密鍵: /etc/letsencrypt/live/ドメイン名/privkey.pem
※サーバを立ち上げるときは
sudo node saver
としないと証明書等が読み込めないので注意
##テスト用のコンテンツ
[Node.jsとSocket.IOによるPCとスマホブラウザのペアリングデモ - ICS MEDIA] (https://ics.media/entry/4320/)
ここのソースを丸ごといただいてごにょごにょと・・・
##サーバとクライントでポートが違う場合
<script src="https://planet-ape.net:5000/socket.io/socket.io.js"></script>
socket.io.jsを読み込むときにポート指定
// サーバーに接続
//var socket = io.connect(location.origin);
var socket = io.connect("https://planet-ape.net:5000");
connectするときもポート指定
##foreverで起動したままにするときの注意
[foreverコマンドでNodeJSアプリを起動したままにする - Qiita] (https://qiita.com/h1y0r1n/items/a2cf8f2e8d3d31ccba49)
※suしてから実行しないとhttps://〜で動かないので注意(起動自体しない)
##ログの出力
console.log('ほげほげ')でも出力できるけど、もうちょいカッコよくしたい。
[【Node.js入門】ログ(logger)の管理を効率化するlog4js-nodeの使い方まとめ! | 侍エンジニア塾ブログ(Samurai Blog) - プログラミング入門者向けサイト] (https://www.sejuku.net/blog/82816)
lessでログを見てみる
ESC[36m[2020-10-08T14:53:32.388] [DEBUG] default - ESC[39m5000でサーバーが起動しました
error: Forever detected script was killed by signal: SIGKILL
error: Script restart attempt #4
ESC[36m[2020-10-08T15:00:47.169] [DEBUG] default - ESC[39m5000でサーバーが起動しました
ESC[32m[2020-10-08T15:01:09.671] [INFO] default - ESC[39m8082
error: Forever detected script was killed by signal: SIGKILL
error: Script restart attempt #5
ESC[36m[2020-10-08T15:11:11.267] [DEBUG] default - ESC[39m5000server start
・・・なんか、変な文字が・・・
[lessで制御文字を表示 | technote] (https://tech.withsin.net/2017/07/05/less-r/)
-r[enter]
[2020-10-08T14:53:32.388] [DEBUG] default - 5000でサーバーが起動しました
error: Forever detected script was killed by signal: SIGKILL
error: Script restart attempt #4
[2020-10-08T15:00:47.169] [DEBUG] default - 5000でサーバーが起動しました
[2020-10-08T15:01:09.671] [INFO] default - 8082
error: Forever detected script was killed by signal: SIGKILL
error: Script restart attempt #5
[2020-10-08T15:11:11.267] [DEBUG] default - 5000server start
消えた!!(色もついてご満悦です)