関連記事:
- VirtualBox+UbuntuにLEMP環境構築
- nginScriptを試す(1):nginxをソースコンパイル
- nginScriptを試す(2):js_set,js_runディレクティブ
なんで突然nginx?
ヾ(・ω<)ノ" 三三三● ⅱⅲ コロコロ♪
------------------- ↓ 余談はここから ↓-------------------
さて前回の記事で、
おもむろにnginxの環境を作ったわけだが、
なんで突然nginxを使うのかというと、
nginscriptを試したかった
のだ。
あとついでに
HTTP/2を試したかった
自動実行周りが煩雑で長くなったので分割。
補足欄にまとめてある。
ヾ(・ω<)ノ" 三三三● ⅱⅲ コロコロ♪
------------------- ↓ 本題はここから ↓-------------------
nginxビルド
準備
前回記事ではパッケージ版を使用したが、
nginScriptを使うにはビルドが必要なので先にアンインストールをしておく。
sudo apt-get purge nginx
ビルドツールのインストール
sudo apt-get install build-essential # ビルド全般ツール
sudo apt-get install libpcre3-dev # PCREライブラリ(nginxのビルドで必要)
sudo apt-get install zlib1g-dev # zlibライブラリ(nginxのビルドで必要)
sudo apt-get install libssl-dev # SSLライブラリ(nginxのビルドで必要)
省略形
sudo apt-get install build-essential libpcre3-dev zlib1g-dev libssl-dev
nginxインストール
nginscriptのビルド
wget http://hg.nginx.org/njs/archive/tip.tar.gz
tar xvfz tip.tar.gz
cd njs-3ed92ffa3f05
./configure
make
cd ..
nginxのビルド
wget http://nginx.org/download/nginx-1.9.5.tar.gz
tar xvfz nginx-1.9.5.tar.gz
cd nginx-1.9.5
./configure --add-module=../njs-3ed92ffa3f05/nginx --pid-path=/run/nginx.pid --user=www-data --group=www-data --with-http_ssl_module
make
sudo make install
cd ..
動作確認
sudo /usr/local/nginx/sbin/nginx
ブラウザで確認
終了
sudo /usr/local/nginx/sbin/nginx -s quit
ヾ(・ω<)ノ" 三三三● ⅱⅲ コロコロ♪
------------------- ↓ 補足はここから ↓-------------------
自動起動登録
ソースビルドの自動実行周りの煩雑さは異常。
nginx.serviceの設置
/lib/systemd/system/nginx.service を作成し以下の呪文を記述
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
参考:https://www.nginx.com/resources/wiki/start/topics/examples/systemd/
init, defaultの設置
wget https://github.com/Fleshgrinder/nginx-sysvinit-script/archive/master.tar.gz
tar xvfz master.tar.gz
cd nginx-sysvinit-script-master
sudo make
sudo update-rc.d nginx enable
# make uninstall
cd ..
各種コマンド
sudo service nginx start # 起動
sudo service nginx stop # 終了
sudo service nginx restart # 再起動