Windows での Nginx のインストールと環境設定 (nginx をサービスとして実行)

Windows での Nginx のインストールと環境設定 (nginx をサービスとして実行)

最初で最も重要なステップは、Windows 環境に Ngnix サービスをインストールする方法です。

http://nginx.org/en/download.html にアクセスして、適切なバージョンをダウンロードしてください。もちろん、MainLine バージョンをお勧めします。ダウンロードしたら、解凍して Ngnix.exe をダブルクリックして実行します (デフォルトのポートは 80 です)。Windows サーバーに IIS を展開している場合は、必ずデフォルトのポートを変更してください。そうしないと、競合が発生します。

すべてが正常であれば、ローカル アドレス + ポート番号にアクセスすると、次のようなインターフェイスが表示されます。

この時点ですべてが正常であると想定することはできません。Windows サーバー環境では、サービスをプロセスとして実行するだけでは不安定であると考えられます。また、プロセスがリサイクルされたりクラッシュしたりすると、関連するログやエラー メッセージを見つけるのが難しくなり、デバッグに支障をきたします。そのため、プロセスを Windows サービスとしてパッケージ化する傾向があります。これにより、堅牢性が高まります。

しかし、デフォルトの Ngnix は Windows サービスをサポートしていません (その理由は冒頭で説明しましたが、Windows 版の Ngnix はテスト バージョンとしてのみ考えられています)。そのため、Ngnix を Windows サービスとしてインストールする他の方法を見つける必要があります。

一般的な方法には instsrv/servany と FireDaemon がありますが、これらの方法には独自の問題があります。たとえば、instsrv/servany は、サービスが再起動、停止、または開始されたときに新しい Ngnix.exe プロセスを生成します。 FireDaemon が起動すると、デフォルトでセカンダリ プロセスが起動します。その理由と背景については、Defonds のブログで詳しく説明されています。

したがって、Ngnix サービスをインストールするには、Windows Service Wrapper を使用することをお勧めします。これは GitHub のオープン ソース プロジェクトです。exe、bat、その他のファイルを Windows サービスとしてインストールできます。ソース コードを GitHub からダウンロードすることもできます。

ファイアウォールを回避する必要があるなどの理由により、バイナリ バージョンを誰でもダウンロードできるわけではありません。便利なダウンロード方法は次のとおりです。 (バージョン1.9)

https://www.jb51.net/softs/645594.html

ダウンロードが完了したら、最初に実行した ngnix プロセスを終了し、winsw.exe を任意の名前に変更して、構成として xml ファイルを作成します。もちろん、名前は exe 名と一致している必要があります。

構成コードは次のとおりです。

<サービス> 
 <id>nginx</id> 
 <name>nginx</name> 
 <description>nginx</description> 
 <実行ファイル>D:\Soft\Nginx\nginx-1.9.15\nginx-1.9.15\nginx.exe</実行ファイル> 
 <ログパス>D:\Soft\Log\</ログパス> 
 <logmode>ロール</logmode> 
 <依存></依存> 
 <開始引数>-p D:\Soft\Nginx\nginx-1.9.15\nginx-1.9.15</開始引数> 
 <stop引数>-p D:\Soft\Nginx\nginx-1.9.15\nginx-1.9.15 -s 停止</stop引数> 
</サービス>

必要に応じて、実行可能ファイル、ログパス、開始引数、停止引数の構成を変更します。

次に、winsw.exe ディレクトリに移動し、winsw.exe install コマンドを実行します (アンインストールするには、winsw.exe uninstall を使用します)。

すべてがうまくいけば、サービス リストに Ngnix サービスが表示されます。サービスを開始すると、上に示したようこそメッセージが表示されます。これは、Ngnix のインストールが成功し、使用できることを意味します。

<<:  Vueフォームバインディングとコンポーネントの詳細な説明

>>:  MySQL 5.7.18 のインストールと設定方法のグラフィックチュートリアル (CentOS7)

推薦する

LinuxにMySQLをインストールするための詳細なチュートリアル

すべてのプラットフォーム用の MySQL ダウンロードは、MySQL ダウンロードから入手できます。...

ページ要素の絶対位置と相対位置に関するある程度の理解

今日から、定期的にちょっとした豆知識を整理していきます。簡単なものもあるかもしれませんが、どれも役に...

MySQLは遅いSQLを開始し、原因を分析します

ステップ1. MySQLスロークエリを有効にする方法1: 設定ファイルを変更するWindows: W...

htmlハイパーリンクaのクリックイベントの後、hrefで指定されたアドレスにジャンプします。

場合によっては、ジャンプを完了するために href の代わりにハイパーリンク <a> を...

画像をラベルとして使用すると、IE では for 属性が機能しません。

例えば:コードをコピーコードは次のとおりです。 <input type="check...

ミニプログラムにより、製品属性の選択や仕様の選択が可能

この記事では、ミニプログラムで製品属性選択または仕様選択を実装するための具体的なコードを参考までに共...

MySQL 8.0.17 をインストールしてリモート アクセスを構成する方法

1. インストール前の準備データベースのバージョンを確認するコマンド: mysql --versio...

CSS で左上の三角形を作成するいくつかの方法の詳細な説明

今日は、CSS を使用して左上の三角形を記述するいくつかの方法を紹介します。概略図(幅と高さを60p...

CentOS 8 カスタム ディレクトリ インストール nginx (チュートリアルの詳細)

1. ツールとライブラリをインストールする# PCRE は、Perl 互換の正規表現ライブラリを含...

レスポンシブウェブデザインを実現するためにIEでCSS3メディアクエリをサポートする

今日の画面解像度は、320 ピクセル (iPhone) ほど小さいものから、2560 ピクセル以上 ...

UbuntuはSSHサービスのリモートログイン操作を開始します

ssh-secure シェルは、安全なリモート ログインを提供します。組み込みシステムを開発し、Li...

マウスオーバーボタンアニメーションを実現する純粋な CSS3 パート 2

前の 2 つの章を終えて、ボタンのフローティング アニメーションについて新たな理解が得られましたか?...

MySQL データベースの最適化: テーブルとデータベースのシャーディング操作の詳細な説明

この記事では、例を使用して、MySQL データベースの最適化のためのテーブルおよびデータベース シャ...

マージントップ崩壊現象とその具体的解決策

マージントップの崩壊とはmargin-top の崩壊は、CSS ボックス モデルで発生する現象です。...

Web データ ストレージ: Cookie、UserData、SessionStorage、WebSqlDatabase

クッキーこれはクライアント ブラウザの状態を保存するための標準的な方法です。Cookie はブラウザ...