menu-icon

WindowsにNginxをインストールする

自分の開発端末(Windows)にNginxをインストールし、サービス化したので、記録を残しておきます。

インストール作業

ダウンロードページからWindows用のバイナリをダウンロードし、適当な場所に置きます。自分はC:\Program Files の下に置きました。

とりあえずの確認としてダブルクリックで起動してみます。起動しても、特に何も出力はないです(ポートが開いてなければWindowsファイアウォールの画面が出ます)。ブラウザでlocalhost にアクセスし、いつもの画面が表示されればOKです。

上記が表示されない場合は、エラーログ(インストールフォルダ\logs\error.log)を確認し、対応します。

確認できたらコマンドプロンプトで以下を実行し、一旦終了します。

C:\Program Files\nginx-1.18.0>nginx -s stop

サービス化

次にNginxをサービス化します。任意のexeをサービス化できるWinSWを使用します。バイナリをここからダウンロードしてきます。.NET Frameworkのバージョンによって、WinSW.NET2.exe, WinSW.NET4.exeがありますので環境に応じて選択してください。

WinSWのexeをダウンロードしたら、Nginxのインストールフォルダに置き、任意の名前にリネームします。今回は nginx-1.18.0.exe という名前にしました。

次に設定ファイルを準備します。以下のような内容のxmlを、先程のexeと同じ名前(今回だとnginx-1.18.0.xml)で用意します。

<service>
  <id>nginx-1.18.0</id>
  <name>nginx-1.18.0</name>
  <description>This service runs Nginx web server.</description>
  <executable>nginx.exe</executable>
  <startarguments></startarguments>
  <stoparguments>-s stop</stoparguments>
  <logmode>rotate</logmode>
</service>

準備できたら、以下の様になります。

コマンドプロンプトを開き、以下のコマンドを実行してサービスとして登録します。

C:\Program Files\nginx-1.18.0>nginx-1.18.0.exe install

サービスを開いて登録されていればOKです!

アンインストール

サービスの登録を解除したい場合は、以下のコマンドになります。

C:\Program Files\nginx-1.18.0>nginx-1.18.0.exe uninstall

参考

http://cointoss.hatenablog.com/entry/2017/03/06/125442