ZIP版Quoridorn 設置のコツ Nginx編

ZIP版Quoridornは/quoridorn/js/ 内に圧縮されたjsファイルが含まれています。
しかし、Nginxのデフォルト設定では、圧縮済みのファイルを通常のファイルとして扱えません。
そこで、下記の様な変更を加えます。

///nginx.confに挿入するならここらへんに
http {
    include       /etc/nginx/mime.types;
    default_type       application/octet-stream;
+      gzip_static always;
+      gunzip          on;
...
}
///jsやcssだけに適応するならこんな感じに
server {
    listen       443 ssl http2;
    server_name  dona.dip.jp;

+ location ~* \.(css|js)$ {
+     gzip_static always;
+     gunzip on;
+  }
}

公式 :Quoridorn リリース
参考 :nginxパフォーマンスチューニング〜静的コンテンツ配信編〜
設置例:コリドーン 英国メイドサーバー(test)


カテゴリー: コリドーン, 備忘録 | 投稿日: | 投稿者: | コメントを残す

Quoridorn の設置方法 (Ubuntu 16.04 / Nginx)

Quoridorn (コリドーン) を設置してみよう!
と思ったけど、公式サイトを見て…にゃーん? という初心者向け解説です。
とりあえず設置できた!程度なので、違うやろ…と思ったら一番イイ方法を教えてちょ。

環境を確認
Nginxはインストール/動作済みとして書いていきます。
nginx -v
nginx version: nginx/1.15.9

Node.jsをインストール
Node.jsとゆー物を使うらしいので、Node.jsとnpm(パッケージ管理)をインストール。
sudo apt install -y nodejs npm

後で必要になる(たぶん)ので作っておく。
mkdir /home/usr/.node_modules_global
npm config set prefix=$HOME/.node_modules_global
npm install npm –global

パスを通す
再起動しても大丈夫になようにパスを通す。
.profile .bash_profile .bashrc にそれぞれ、以下の一行を加えておく。
.profile だけで良いのかもしれない。
export PATH=”$HOME/.node_modules_global/bin:$PATH”

Quoridornをダウンロード
公式サイトの”Clone or dowload“ボタンを押してDL、任意のフォルダへ展開。
今回は例として /home/usr で行います。
mv /home/usr/quoridorn-master /home/usr/quoridorn  #適当な名前にリネーム
cd /home/usr/quoridorn                 #プロジェクトのディレクトリへ移動
npm init                     #関連付け? 全部EnterでOK

環境設定を変更
ビルド前に相対パスなどの設定 index.js を変更します。

 // Various Dev Server settings
 -    host: 'localhost',
 +    host: '127.0.0.1',  #localhostだとIPv6関連でエラーが出る事もあるので一応変更

 // Paths
  assetsRoot: path.resolve(__dirname, '../dist'),
  assetsSubDirectory: 'static',
 - assetsPublicPath: '/quoridorn/dev/',
 + assetsPublicPath: './',        #デフォルトではリンク切れとなるので変更

/home/usr/quoridorn/config/index.js

Quoridornをインストール
必要な関連パッケージをインストールする。色々聞かれるけど、全部EnterでOK。
fsevents@1.2.4関連のエラーは無視して良い(バグ?らしい)。
パーミッション関連でエラーは、sudo かパーミッション変更で回避する。
sudo npm install

Quoridornをビルド
build後に出るbcdice-js関連のエラーも無視して良いそうです。
Build complete. と出れば完成。
sudo npm run build

ビルドされた内容を確認/移動
出来上がった物は /home/usr/quoridorn/dist に保存されている。
必要であれば移動する。
sudo cp -dfpvR /home/usr/quoridorn/dist /www/trpg/quoridorn

SKYWAY KEYを編集
事前に取得したkeyを入力する。取得方法はこちらを参照のこと。

 - window.__SKYWAY_KEY__ = '*****_*****_*****_*****_*****'
 + window.__SKYWAY_KEY__ = 'nakatyaN-kawaii-Idol-Korekaramo-4649Ne'

/home/usr/quoridorn/dist/static/key.js

Nginxの設定
*.confを設定。location と alias を設定する。

server {
    listen       80;
    server_name  kancolle.idol.world;

#TRPG_Quoridorn
          location   /quoridorn {
          alias      /home/usr/quoridorn/dist;
          index      index.php index.html;
 
            location ~ \.(php|html)$ {
            ...
            }
          }
}

/etc/nginx/hoge.d/hoge.conf

公開するディレクトリ以下のパーミッションを変更(タブン必要)。
sudo chown nginx:nginx -R /home/usr/quoridorn/dist

再起動、ブラウザで確認。
nginx -t
sudo systemctl restart nginx

導入例
Quoridorn 英国メイドサーバー


カテゴリー: コリドーン, 備忘録 | 投稿日: | 投稿者: | コメントを残す

ドメイン変更のお知らせ

2005年10月から使用しているドメイン dona.dip.jp ですが、
2019年05月から dona-co.art へ変更致します。

約14年間使い続けてきましたが、
Web活動20周年を期に独自ドメインを取得する事になりました。
今後とも末永くよろしく御願い致します。


カテゴリー: 更新情報 | 投稿日: | 投稿者: | コメントを残す

Ubuntu16.04 Nginx Let’s encrypt で評価A+な SSL+HTML/2

ポート開放を忘れずに (ルーターも)
sudo ufw allow 443

Let’s encryptをインストール
sudo apt install letsencrypt

証明書の発行を発行して貰う。
-w でルートディレクトリ -dでドメイン -m でメアドを指定。
sudo letsencrypt certonly –webroot -w /www/html -d idol-nakachan.world -m nakachankawaii@kancolle.mail.jp

証明書の自動更新 (crontab)
/etc/crontab
00 05 01 * * sudo systemctl stop nginx; sudo letsencrypt renew; sudo systemctl start nginx

DH交換鍵の設定
sudo mkdir /etc/nginx/ssl
sudo dhparam -out /etc/nginx/ssl/nakachan-anzen.pem 2048

Nginxの設定

server {
listen       80;
server_name  idol-nakachan.world;
return 301 https://$host$request_uri;
}
server {
listen       443 ssl http2;
server_name  idol-nakachan.world;
add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains;';

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_certificate         /etc/letsencrypt/live/idol-nakachan.world/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/idol-nakachan.world/privkey.pem;
ssl_dhparam           /etc/nginx/ssl/nakachan-anzen.pem;
ssl_prefer_server_ciphers on;
ssl_ciphers 'kEECDH+ECDSA+AES128 kEECDH+ECDSA+AES256 kEECDH+AES128 kEECDH+AES256 kEDH+AES128 kEDH+AES256 DES-CBC3-SHA +SHA !aNULL !eNULL !LOW !kECDH !DSS !MD5 !EXP !PSK !SRP !CAMELLIA !SEED';
ssl_session_cache shared:SSL:50m;
ssl_session_timeout 1d;
ssl_stapling on;
}

/etc/nginx/nakachan.conf

再起動
sudo nginx -t
sudo systemctl restart nginx


カテゴリー: 備忘録 | 投稿日: | 投稿者: | コメントを残す

サーバー機器の更新、https HTTP/2等へ変更

サーバー機器の更新が完了いたしました。
構成は以下のようになります。

CPU:Ryzen3 2200G
MEM:DDR4-3200 32GB
SSD:500GB+256GB
HDD:1TB

Ubuntu 16.04
Nginx 1.15.9
MariaDB 10.3
PHP 7.3.2

また、同時に下記のような改善を加えました。
これにより最大2万req/s の処理性能となりました。
・HTTPSへ変更
・HTTP/2化
・通信のUnix Socket通信化
・キャッシュ機能の増強
・同時接続数の向上


カテゴリー: 更新情報 | 投稿日: | 投稿者: | コメントを残す