- Home ›
- Nginx入門 ›
- Nginxのインストール
NginxをWindowsサービスに登録する
Nginx は Windows サービスに対応していないため、標準の方法ではサービスに登録することはできませんが、 WinSW を使用することで可能となります。ここでは WinSW を使って Nginx を Window サービスに登録する方法について解説します。
WinSWをダウンロードする
WinSW(Windows Service Wrapper)は Nginx のように Windows サービスに対応していないアプリを Windows サービスに登録するときに使用します。最初に NSSM をインストールします。次の URL へアクセスしてください。
・https://github.com/winsw/winsw
「Download」のところにある「GitHub Releases」をクリックしてください。
次のような画面が表示されます。
「WinSW v2.12.0」のブロックにある「WinSW-x64.exe」をクリックしてください。
ダウンロードした「WinSW-x64.exe」ファイルを、 Nginx をインストールしたディレクトリに設置してください。
実行するファイルが Nginx 用と識別しやすいように WinSW-x64.exe ファイルの名前を変更します。今回は WinSW-x64.exe から WinSW-x64-nginx.exe に変更しました。(名前はご自分で分かればどのような名前にされても構いません)。
WinSWの設定ファイルを作成する
テキストエディタを使い、下記の内容で設定ファイルを XML ファイルとして作成します。各項目の役割は以下の通りです。
<service>
<id>nginx0001</id>
<name>Nginx-1.28.2</name>
<description>Nginx-1.28.2</description>
<executable>C:\pg\nginx-1.28.2\nginx.exe</executable>
<stopexecutable>C:\pg\nginx-1.28.2\nginx.exe</stopexecutable>
<stoparguments>-s stop</stoparguments>
<log mode="roll-by-size">
<sizeThreshold>10240</sizeThreshold>
<keepFiles>4</keepFiles>
</log>
</service>
id は Windows が内部でサービスを識別するための一意の ID です。他のサービスと重複しない半角英数字で指定します。 name はサービス一覧のところに表示されるサービスの名前です。他のサービスと同じにならないような任意の名前を指定します。 description はサービス一覧のところに表示されるサービスの説明です。
executable と startarguments は起動するプログラム(nginx.exe)をフルパスで指定します。 Nginx をインストールしたディレクトリに合わせて設定してください。起動時に引数を使用しないので startarguments は省略しています。
stopexecutable と stoparguments はサービス停止時に実行するコマンドと引数を指定します。 Nginx は強制停止する場合に nginx -s stop と実行するのでこのように設定しています。
log の個所はログをどのように保存するかを設定しています。今回はログファイルが指定されたサイズを超えると自動的にローテーションするように設定しました。詳しくは「Logging and error reporting」を参照されてください。
XML ファイルの名前は WinSW の実行ファイル名と同じにしてください。リネームしていなければ WinSW-x64.xml となります。今回はリネームしているので WinSW-x64-nginx.xml となります。(文字コードは UTF-8 を使用されてください)。
これで準備は完了です。
WinSWを使ってNginxをサービスに登録する
それでは WinSW を使って Nginx を Windows のサービスに登録します。コマンドプロンプトを管理者権限で起動し、 Nginx をインストールしたディレクトリに移動したあと次のように実行してください。
WinSW-x64-nginx install
※ ご自分が WinSW-x64.exe をリネームした名前で実行してください。
※ コマンドプロンプトを管理者権限で起動する方法は「管理者権限でコマンドプロンプトを起動する」を参照されてください。
次のように表示されれば Nginx の Windows サービスへの登録は完了です。
それでは確認を行ってみます。タスクバー上の「スタート」を右クリックしてください。表示されたメニューの中から「コンピューターの管理」をクリックしてください。
「コンピューターの管理」の画面が表示されたら「サービスとアプリケーション」の中にある「サービス」をクリックしてください。
画面右側に表示されたサービス一覧の中に、今回作成した設定ファイルで指定したサービス名で Nginx が追加されています。
サービスとしてNginxを開始する
それではサービス一覧の中にある Nginx のサービスをダブルクリックしてください。サービスの設定画面が表示されます。
「サービスの状態」のところにある「開始」をクリックしてください。
Nginx がサービスとして開始されます。
それでは確認してみます。ブラウザを起動し次の URL へアクセスしてください。
http://localhost/
ブラウザに次のように表示されれば Nginx が正常に起動しています。
サービスの設定画面では、開始したサービスを停止したり、 Windows 起動時に自動的にサービスが開始されるように設定することができます。
サービスを削除する
サービスとして登録した Nginx を削除する方法です。コマンドプロンプトを管理者権限で起動し、 Nginx をインストールしたディレクトリに移動したあと次のように実行してください。
WinSW-x64-nginx uninstall
※ ご自分が WinSW-x64.exe をリネームした名前で実行してください。
次のように表示されれば登録したサービスの削除が完了です。
-- --
WinSW を使って Nginx を Window サービスに登録する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。