Nginxシリーズのチュートリアル(1)| Linux環境でNginxサービスを構築する方法を教えます

Nginxシリーズのチュートリアル(1)| Linux環境でNginxサービスを構築する方法を教えます

著者:JackTian
マイクロチャネル公開番号:ITのJiege旅行(ID:Jake_Internet)

シリーズガイド

  1. LAMPシリーズのチュートリアル(1)| Linux環境でのHTTPDサービスのデプロイについて説明する
  2. LAMPシリーズのチュートリアル(2)| Linux環境でWebサイトを監視するためにAWStats分析システムをデプロイする方法は?
  3. LAMPシリーズのチュートリアル(3)| HTTPDサービスのアクセス制御を理解するための記事
  4. LAMPシリーズのチュートリアル(4)| MySQLデータベースシステム(1)
  5. LAMPチュートリアルシリーズ(5)| MySQLデータベースシステム(2)-SQLステートメントの基本操作
  6. LAMPシリーズのチュートリアル(6)| MySQLデータベースシステム(3)-データベースユーザー認証
  7. LAMPシリーズチュートリアル(7)| MySQLデータベースシステム(4)-データベースのバックアップとリカバリ
  8. LAMPシリーズのチュートリアル(8)| LAMP Webサイトアーキテクチャプラットフォームで簡単に遊ぶことができます(1)
  9. LAMPシリーズチュートリアル(9)| LAMPアーキテクチャアプリケーションケース-PHPMyAdminシステムの導入(2)

1. Nginxとは何ですか?
Nginxは、高性能HTTPおよびリバースプロキシWebサーバーであり、IMAP / POP3 / SMTPサービスも提供します。これは、ロシアで2番目に訪問されたRambler.ruサイトのためにIgor Sesoyevによって開発されました。最初のパブリックバージョンは、0.1.0でした。 2004年10月4日にリリースされました。メモリが少なく、同時実行性が高く、パフォーマンスの最適化、安定性、システムリソース消費量の削減、HTTP同時接続の高い処理機能のために特別に開発されました。1台のマシンで最大50,000の同時接続をサポートします。

したがって、実際には、Nginxの同時実行機能は、同じタイプのWebサーバーでより優れたパフォーマンスを発揮します。実際の環境では、Nginxを使用すると、このシナリオの次のアーキテクチャ図になります。実際、次のアーキテクチャ図では、Nginxサーバーは負荷分散サーバーまたはリバースプロキシサーバーとして直接理解できるため、クライアントがNginxサーバーにリクエストを送信する場合、Nginxサーバーはからのリクエストによってルールを構成する必要があります。クライアントはバックエンドのLAMP、Tomcat、およびLNMPに転送されます。

Nginxシリーズのチュートリアル(1)| Linux環境でNginxサービスを構築する方法を教えます

2.なぜNginxを使用するのですか?Apacheと比較し
てWebサーバーとして
、Nginxはより少ないリソースを使用し、より多くの同時接続をサポートします。同時実行性が高い場合、NginxはApacheサーバーの代わりになります。負荷分散サーバーとしてのNginxは、外部サービス用のRailsおよびPHPプログラムを内部的にサポートし、HTTPプロキシサーバーとして外部サービスもサポートします。C言語で記述されています。システムリソースのオーバーヘッドに関係なく、CPUの使用効率はPerlbalよりもはるかに優れています。

Nginxの構成はシンプルで、Apacheは複雑です
。Nginxは簡単に起動できます。ほぼ7 * 24時間実行できます。長時間再起動しなくても、ソフトウェアバージョンを中断することなくアップグレードできます。静的処理のパフォーマンスはApacheよりも優れているのは3倍以上です。Nginxは他のバックエンドと組み合わせて使用​​する必要があります。ApacheはPHPのサポートが簡単で、Nginxよりも多くのコンポーネントがあります。

コアポイント
Nginxは非同期であり、複数の接続が1つのプロセスに対応できます
。Apacheは同期マルチプロセスモデルであり、1つの接続が1つのプロセスに対応します。

専門分野
Nginxは静的リクエストのフロントエンド処理に
適しておりApacheは動的リクエストのバックエンド処理に適しています。

3、Nginxインストールおよび
インストールサポートソフトウェア

Nginxの構成と操作には、pcreおよびzlibソフトウェアパッケージのサポートが必要です。Nginxをスムーズにインストールするには、これらのソフトウェアの開発パッケージを対応するライブラリとヘッダーファイルにインストールする必要があります。

# yum -y install pcre-devel zlib-devel

実行中のユーザーとグループを作成する

Nginxサービスプログラムはデフォルトでnobobyとして実行されます。アクセス許可をより正確に制御し、柔軟性を高め、セキュリティリスクを軽減するために、新しいユーザーアカウントを作成することをお勧めします。

# useradd -M -s /sbin/nologin nginx

ダウンロード、コンパイル、インストール

Nginxコンパイルオプションを構成するときは、インストールディレクトリを/ usr / local / nginxに設定し、実行中のユーザーとグループをnginxに設定します。http_stub_status_moduleモジュールがステータス統計をサポートできるようにして、サーバー接続情報の表示を容易にします。

# wget http://nginx.org/download/nginx-1.17.0.tar.gz
# tar zxf nginx-1.17.0.tar.gz
# cd nginx-1.17.0
# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
# make && make install

メインプログラムNginxのリンクファイルを作成します

# ln -s /usr/local/sbin/nginx /usr/local/sbin/
# ls -l /usr/local/sbin/nginx
lrwxrwxrwx. 1 root root 21 6月   4 07:31 /usr/local/sbin/nginx -> /usr/local/sbin/nginx

インストール後、sbinディレクトリへのデフォルトのインストールパスを入力し、nginxを実行して開始します。

# cd /usr/local/nginx/sbin/
# pwd
/usr/local/nginx/sbin
# ./nginx 
# nginx

Nginxプログラムのステータスを監視する

# netstat -anpt | grep nginx
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      53816/nginx 

ポートをリッスンした後、ブラウザでNginxアドレスに直接アクセスします。ブラウザに次のページが表示されたら、Nginxが正常にインストールされたことを意味します。

Nginxシリーズのチュートリアル(1)| Linux環境でNginxサービスを構築する方法を教えます

Nginxサービススクリプト
使用してNginxサービススクリプトを記述し、chkconfigとサービスツールを使用して統合管理を行います。

#!/bin/bash
# chkconfig: 2345 99 20
# description: Nginx Server Control Scripts shell
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
    start)
    if [ -f $PIDF ]; then
        echo "Nginx is running.. Start it is error"
    else
        $PROG
    fi
    ;;
    stop)
    if [ -f $PIDF ]; then
        kill -s QUIT $(cat $PIDF)
        rm -rf $PIDF
    else
        echo "Nginx is stopping .. Stop it is error"
    fi
    ;;
    restart)
        $0 stop
        $0 start
    ;;
    reload)
    if [ -f $PIDF ]; then
        kill -s HUP $(cat $PIDF)
    else
        echo "Nginx is stopping . reload it is error"
    fi
    ;;
    status)
    if [ -f $PIDF ]; then
        echo "Nginx is running"
    else
        echo "Nginx is stopping"
    fi
    ;;
    *)
    echo "Usage: $0 (start|stop|restart|reload|status)"
    exit 1
esac
exit 0
# chmod +x /etc/init.d/nginx
# chkconfig --add nginx

Nginx構成ファイルを変更する場合は、。/ nginx -sreloadコマンドを使用してNginx構成ファイルをロードできます。

# ./nginx -s reload

要約すると、
Nginxの基本概念、Nginxを使用する理由を紹介し、Nginxのインストールには予備的な理解があります。次の記事では、フォワードプロキシ、リバースプロキシ、負荷分散、LNMPアーキテクチャの構築について引き続き紹介します。本日は紹介します。ここで、ご不明な点がございましたら、ディスカッション用のメッセージを残してください。

おすすめ

転載: blog.51cto.com/15067236/2605050