Nginxとは何ですか?
Nginx (「エンジンX」と発音)はApacheの代替であり、世界で最も人気のあるHTTPWebサーバーの1つと見なされています。 Apacheとは対照的に、Nginxはより少ないリソースを消費する傾向があり、サーバーの応答性を向上させます。そのイベント駆動型の設計により、リソースが使いやすくなっています。
とりわけ、管理者は高度な構成をセットアップでき、同時接続の高負荷に対処できます。 Nginxは、HTTP Webサーバーに最適であるだけでなく、リバースプロキシ、ロードバランサー、および標準のメールサーバーとしても機能します。
この記事では、CentOS7にNginxをインストールして構成する方法について学習します。 。
前提条件
- CentOS自己管理サーバーまたはVM
- ドメイン。ドメインをNginxウェブサーバーに接続する必要があります
- 須藤 またはルート 権限[[メール保護]〜]
- SELinuxが正しくセットアップされている
CentOS7にNginxをインストールする方法
一般的に、CentOSはホスティング業界で推奨される配布パッケージです。現在、CentOS 8が最新バージョンですが、CentOS7は2024年までサポートされています。
以下の構成手順では、CentOS7でNginxをセットアップするために必要な手順について詳しく説明します。
CentOS 8のインストール手順については、CentOS8にNginxをインストールする方法をお読みください。
ステップ1:リポジトリパッケージリストを更新する
これを行うには、次のコマンドを実行します。
sudo yum -y update
-y
オプションのパラメータです。確認の質問を避けるのに役立ちます。お気づきのように、私たちはそれをたくさん使用します。このパラメータを使用しない場合は、コマンドの確認を求めるメッセージが表示されます。
ステップ2:Enterprise Linux(EPEL)用の追加パッケージをインストールする
NginxはCentOSパッケージに付属する標準リポジトリでは利用できないため、サーバーにEPELリポジトリをインストールする必要があります。 EPELは無料で使用でき、Yumと一緒にインストールできる多数のオープンソースパッケージを提供しています。
EPELをインストールするには、Yumパッケージマネージャーを使用して次のコマンドを実行します。
sudo yum install -y epel-release
ステップ3:Nginxをインストールする
ステップ2は、Nginxリポジトリをサーバーに追加しました。これで、次のyumコマンドを実行してNginxをインストールできます。
sudo yum –y install nginx
ステップ4:Nginxサービスを開始する
Nginxのインスタンスはインストールされていますが、自動的には起動しません。
Nginxを起動するには、次を実行します:
sudo systemctl start nginx
Enterキーを押した後、戻り値は取得されません。ただし、Nginxは開始されているはずです。ステータスを確認するには、次を実行します:
sudo systemctl status nginx
「アクティブ(実行中)」と書かれた緑色のテキストが表示されているはずです。 見つからない場合は、Nginxのインスタンスが正常に起動していない可能性があります。
ステップ5:起動時に開始するようにNginxを構成する
ほとんどの管理者は、サーバーが再起動するたびにNGINXが自動的に起動することを確認したいと思うでしょう。これを設定するには、次を実行します:
sudo systemctl enable nginx
ステップ6:トラフィックを許可するようにファイアウォールを構成する
CentOS 7はデフォルトでファイアウォールを有効にし、ポート80および443へのアクセスをブロックします。NginxからのインバウンドHTTPSおよびHTTPパケットをブロックします。
HTTPおよびHTTPSトラフィックを許可するには、次のコマンドを実行します。
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https
firewall-cmd --reload
各コマンドの後に、success
が表示されます。 コマンドが正しく実行されたことを示します。
ステップ7:Nginxのインストールを確認する
Nginxが正しく実行されているかどうかを確認する最も簡単な方法は、サーバーのパブリックIPアドレスにアクセスすることです。 Webブラウザを開いて、 http:// server_IP_or_domain_nameにアクセスするだけです。 /
まず、サーバーのパブリックIPアドレスを見つけます。
ip a
私たちのIPアドレスは192.168.122.1/ 24 。 IPアドレスをコピーして、ブラウザに貼り付けます。これにより、 Welcome to Nginxが読み込まれます。 ページ。
「テストに失敗しました」エラーを解決する方法
「テストに失敗しました」を受け取った場合 nginx.confファイルのエラーメッセージ。IPアドレスの問題が発生している可能性があります。
Nginxサービスは、デフォルトでIPv4とIPv6をリッスンします。サーバーがIPv6をサポートしていない場合、テストは失敗します。ただし、これはメイン構成ファイルを変更することで修正できます。
メインの構成ファイル/etc/nginx/nginx.confを開きます 。次の行を見つけてコメントアウトします:
listen [::]:80 default_server;
行の先頭に「#」を追加するだけです。次のようになります:
# listen [::]:80 default_server;
行った変更を保存し、Nginxサービスをリロードします。
sudo systemctl reload nginx
ブラウザでサーバーのIPアドレスを参照します。デフォルトのNginxテストページが表示されます。
Nginx構成ファイルとルート
Nginx構成ファイルの場所とデフォルトのNginxサーバーのルートディレクトリを知っておく必要があります。
追加のサーバーブロック
Apacheでは、管理者は仮想ホストを使用して複数のWebサイトを実行します。 Nginxでは、単一のサーバーで複数のWebサイトを実行するには、サーバーブロックを使用します。
追加のサーバーブロックは、.confファイル拡張子を持つ新しい構成ファイルを作成することによって追加されます。これらのファイルを/etc/nginx/conf.dに配置します Nginxが起動するたびに読み込まれます。
デフォルトのNginxサーバールート
デフォルトのNginxサーバーのルートディレクトリは/usr / share / nginx 。これは、 /etc/nginx/conf.d/default.confにあるデフォルトのサーバーブロック構成ファイルで指定されます 。
Webファイルを含むデフォルトのサーバードキュメントルートディレクトリはusr/ share / nginx / htmlです。 。
グローバル構成
/etc/nginx/nginx.conf にあるメインのNginx構成ファイルを変更することで、グローバル構成を微調整できます。 。この構成ファイルは、コンテキストに分割されています。デフォルトでは、3つのコンテキストを識別できます。
- イベント Nginxが一般的に接続を処理する方法を定義するグローバル設定です。
- HTTP サーバーがHTTPおよびHTTPS接続を処理する方法を定義します。
- サーバー HTTPコンテキスト内で定義されます。サーバーポート、ドキュメントルートなどを指定します。
いつでもコンテキストを追加できます。
Nginxの管理–一般的なタスク
Nginxを停止
Nginxサーバーを停止するには、次のコマンドを実行します:
sudo systemctl stop nginx
Nginxを再起動
Nginxサービスを再起動するには、次を実行します:
sudo systemctl restart nginx
Nginxをリロード
Nginxのメイン構成にいくつかの変更を加えた場合。変更を反映するには、サーバーをリロードする必要があります。
sudo systemctl reload nginx
起動時の自動起動を無効にする
起動時にNginxを自動的に起動させたくない場合は、次のコマンドを実行します:
sudo systemctl disable nginx
新しいディレクトリの構成
複数のWebサイトをホストしている場合、経験則として、標準の命名規則に従うことをお勧めします。 cPanelの標準的な名前を使用して、ディレクトリを作成しましょう。
sudo mkdir -p /var/www/yourdomain.com/public_html
次に必要なのはインデックスページです。これは、構成をテストするのに役立ちます。
sudo nano /var/www/yourdomain.com/public_html/index.html
テストの目的で、index.htmlに1行のテキストを入力します。ファイルを保存して閉じます。
データにオンラインでアクセスできるように、Linuxファイルのアクセス許可を変更します。
sudo chmod 755 /var/www/yourdomain.com/public_html
index.htmlページを開いてみてください。オンラインで入手できるはずです。