Nginxサーバーの詳細なインストール手順----ドメイン名、IPアドレス、ポート番号に基づいて仮想ホストを構成します-----見てください

----- Nginxサーバーの詳細なインストール手順

[Nginxの紹介]

  • Nginxは、高性能で軽量なWebサービスソフトウェアであり、HTTPおよびリバースプロキシサーバーでもあります。
  • Nginxの機能:高い安定性、低いシステムリソース消費、http同時接続のための高い処理能力。1台の物理サーバーで30,000〜50,000の同時リクエストをサポートできます。
  • Webサーバーとして:Apacheサーバーと比較して、Nginxは少ないリソースを使用し、より多くの同時接続をサポートし、より高い効率を反映するため、Nginxはより人気があります。
  • 書き換え書き換えルールのサポート:さまざまなドメイン名とURLに応じて、httpリクエストをさまざまなバックエンドサーバーグループに配信できます。
  • 組み込みのヘルスチェック機能:NginxプロキシのバックエンドWebサーバーがダウンしても、フロントエンドアクセスは影響を受けません。
  • 帯域幅の節約:gzip圧縮をサポートします。ブラウザーのローカルキャッシュヘッダーヘッダーを追加できます。
  • 高い安定性:リバースプロキシに使用され、ダウンタイムの可能性は非常に低くなります。

[Nginxサーバーをインストール]

1.環境を構築する

Linuxオペレーティングシステムにhttpdサービスがインストールされている場合は、まず閉じてください。そうしないと、インストールプロセス中にポート80が占有されているというエラーが発生します。

1. Nginxの構成と操作には、pcre(提供されるライブラリファイル)、zlib(提供されるヘッダーファイル)ソフトウェアパッケージ(開発:開発パッケージ)のサポートを最初にインストールする必要があります。

[root@localhost~]# yum -y install pcre-devel zlib-devel

2.専用のユーザーアカウントを作成して、アクセス権をより正確に制御し、柔軟性を高め、セキュリティリスクを軽減します。

[root@localhost~]# useradd -M -s /sbin/nologin nginx

3. Nginxをコンパイルしてインストールし
ます。ここではNginx圧縮パッケージが必要です。インターネットからダウンロードして、/ optディレクトリにアップロードできます。(私のものはnginx-1.15.9.tar.gzバージョンです)

[root@localhost opt]# tar zxvf nginx-1.15.9.tar.gz
[root@localhost opt]#cd nginx-1.15.9/
[root@localhost nginx-1.15.9]#
./configure \
--prefix=/usr/local/nginx \            #######安装路径/usr/local/nginx
--user=nginx \              #######运行用户为nginx
--group=nginx \           #######运行用户组为nginx
--with-http_stub_status_module \          ########启用这个模块以支持状态统计,便于查看服务器的连接信息
(这边建议 先将 gcc gcc-c++ make 编译语言一起安装下,因为我的是装过的了,怕你们会报错)
[root@localhost nginx-1.15.9]# make -j3                     ######make编译,核心数为3(加载速度快些)
[root@localhost nginx-1.15.9]# make install                     ######make 安装

4.管理者が「nginx」コマンドを直接実行してNginxのメインプログラムを呼び出すことができるように、メインプログラムNginxのソフト接続ファイルを作成します。

[root@localhost nginx-1.15.9]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
[root@localhost nginx-1.15.9]#  ls -l /usr/local/sbin/nginx
(####问题报错:可能用户账号没创建 或者 make没编译好,需要重新make编译)

2. Nginxの操作と制御

5. Nginxメインプログラムは、
他の場所を確認したい場合は、構成ファイル(/usr/local/nginx/conf/nginx.conf)を確認するために、構成ファイルを確認する「-t」オプションも提供します。構成ファイルでは、「-c」オプションを使用してパスを指定できます。

[root@localhost nginx-1.15.9]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost nginx-1.15.9]# nginx            ######直接运行 nginx 及可启动 nginx 服务器
(注意这里:若服务器里有 httpd 等其他 web 服务软件,可以修改端口、停用或卸载服务,要不然会冲突。)

6. Nginxプログラムの監視ステータスを確認するか、ブラウザでWebサービスにアクセスすると(デフォルトのページには "Welcone to nginx!"と表示されます)、Nginxサービスが正常に実行されているかどうかを確認できます。

[root@localhost nginx-1.15.9]# netstat -anpt | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      76079/nginx: master
[root@localhost nginx-1.15.9]# yum -y install elinks               ######安装elinks浏览器
[root@localhost nginx-1.15.9]#elinks http://localhost                 ######使用elinks浏览器
1)://会显示: “Welcone to nginx!” 页面,表明 nginx 服务在正常运行
2)://   在你可以在真机上访问域名时,再在 linux 操作系统上输入 “elinks http://localhost ”时,将会显示你的域名

7. killallコマンドを使用して構成をリロードし、サービスを停止します(「-s」オプションでシグナルタイプを指定)、signal(HUPリロード構成、QUITはプロセスを終了、KILLはプロセスを強制終了)

[root@localhost nginx-1.15.9]# killall -s HUP nginx                       #####重载配置
[root@localhost nginx-1.15.9]# killall -s QUIT nginx                       #####退出进程

8. systemginツールを使用して、Nginxサービススクリプトに基づいて管理します

[root@localhost nginx-1.15.9]# vi /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/bin/kill -s HUP $MAINPID
ExecStop=/usr/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target
 
[root@localhost nginx-1.15.9]# chmod 754 /lib/systemd/system/nginx.service
[root@localhost nginx-1.15.9]# systemctl enable nginx.service

インストール済み

[ドメイン名に基づいて仮想ホストを構成する]

1. windosクライアントのC:\ Windows \ System32 \ drivers \ etc \ hostsファイルを変更し、www.51xit.topとwww.52xit.topという2つのドメイン名を追加します。どちらも実装用の同じサーバーIРアドレスを指します。異なるドメイン名が異なる仮想ホストにアクセスします。
例:
20.0.0.33 www.53com
20.0.0.33 www.553xit.com

2.各ウェブサイトのカタログとテストホームページを準備する

[root@localhost~]# mkdir -p /var/www/html/53xit/                  ####创建www.53xit.com的根目录
[root@localhost ~]# mkdir -p /var/www/html/553xit/                      ####创建www.553xit.com的根目录
[root@localhost~]# echo "www.53xit.top" >> /var/www/html/53xit/index.html
[root@localhost~]#echo "www.553xit.top" >> /var/www/html/553xit/index.html

3.設定ファイルnginx.confを編集します

    [root@localhost nginx-1.15.9]# vi /usr/local/nginx/conf/nginx.conf
    #user  nobody;                                                  #####运行用户
    worker_processes  1;                                        #####工作进程数量
    #error_log  logs/error.log;                               #####错误日志文件的位置
    #error_log  logs/error.log  notice;
    #error_log  logs/error.log  info;
    #pid        logs/nginx.pid;                                   #####PID文件的位置
     
    events {
        use epoll;                                                       #####使用 epoll 模型
        worker_connections  1024;                         #####每个进程处理1024个连接
    }
     
    http {
        include       mime.types;
        default_type  application/octet-stream;
        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                '$status $body_bytes_sent "$http_referer" '
                '"$http_user_agent" "$http_x_forwarded_for"';
        access_log  logs/access.log  main;                                  #####访问日志位置
        sendfile        on;                                    #####支持文件发送(下载)
        #tcp_nopush     on;
        #keepalive_timeout  0;
        keepalive_timeout  65;                                     #####连接保持超时
        #gzip  on;
         
#    server {                                                #####web 服务的监听配置
#        listen       80;                                   #####监听端口及地址
#        server_name  localhost;                            #####网站名称(FQDN)
#        charset utf-8;                                   #####网页的默认字符集      
#        #access_log  logs/host.access.log  main;
#        location / {                                   #####根目录配置
#            root   html;                                #####网站根目录的位置
#           index  index.html index.htm;                   #####默认首页(索引页)
#       }
        #error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        error_page   500 502 503 504  /50x.html;             #####内部错误的反馈界面
#       location = /50x.html {                                          #####错误页面配置
#            root   html;
#        }
 
     # proxy the PHP scripts to Apache listening on 127.0.0.1:80
     #location ~ \.php$ {
     #    proxy_pass   http://127.0.0.1;
     。。。。。。。                #####省略内容,以下全 # 号注释
     。。。。
     #location ~ /\.ht {
     #    deny  all;
     #}
#    }
  
server {                       #####直接插入添加(第一个域名)
      listen 80;
      server_name www.53xit.com;
      charset utf-8;
      access_log logs/www.53xit.com.access.log;
      location /{
             root /var/www/html/53xit;
             index index.html index.htm;
       }
      error_page 500 502 503 504 /50x.html;
      location = 50x.html{
                  root html;
                   }
}
 
server {                                     #####直接插入添加(第二个域名)
     listen 80;
     server_name www.553xit.com;
     charset utf-8;
     access_log logs/www.553xit.com.access.log;
     location /{
             root /var/www/html/553xit;
             index index.html index.htm;
     }
     error_page 500 502 503 504 /50x.html;
     location = 50x.html{
                   root html;
                   }
}
 
 # another virtual host using mix of IP-, name-, and port-based configuration
          ........(省略内容)

4. Nginxを起動します

[root@localhost nginx-1.15.9]# systemctl restart nginx

5.テストする実際のマシンのブラウザーにドメイン名を入力します

[IPアドレスに基づいて仮想ホストを構成する]

1.ネットワークカードを仮想マシンに追加し、IPを設定し、pingをテストする

カスタムの追加:VM1ネットワークカード、
PPID番号の表示:nmcli接続ens36
のPPID番号コピー
cd / etc / sysconf / network-scripts /
cp ifcfg-ens33 ifcfg-ens36
vi ifcfg-ens36
…(内容を変更し、PPID番号を変更するように注意してください) )

ネットワークカードを再起動します。systemctl restart network

2. nginx.conf構成ファイルのサブ定義タグの構成を変更します

vi /usr/local/nginx/conf/nginx.conf
        。。。。。。(省略内容,只需要改下面几个参数)
erver {
        listen 192.168.100.33:80;                                 #####修改成ip
        server_name 192.168.100.33:80;                      #####修改成ip
        charset utf-8;
        access_log logs/www.53xit.com.access.log;
        location / {
                root /var/www/html/53xit;
                index index.html index.htm;
                }
        error_page 500 502 503 504 /50x.html;
        location = 50x.html{
                root html;
                }
}
 
server {
        listen 20.0.0.33:80;                                   #####修改成ip
        server_name 20.0.0.33:80;                        #####修改成ip
        charset utf-8;
        access_log logs/www.553xit.com.access.log;
        location /{
                root /var/www/html/553xit;
                index index.html index.htm;
                }
        error_page 500 502 503 504 /50x.html;
        location = 50x.html{
                root html;
                }
}

nginxサービスを再起動します。systemctl restart nginx

3.テストする実際のマシンのブラウザーにIPアドレスを入力します

[ポート番号に基づいて仮想ホストを構成する]

1.同じIPアドレスでポート番号が異なる

vi /usr/local/nginx/conf/nginx.conf
              。。。。。(省略以下内容,更改如下几个参数)

server {
        listen 20.0.0.33:6666;
        server_name 20.0.0.33:6666;
        charset utf-8;
        access_log logs/www.53xit.com.access.log;
        location / {
                root /var/www/html/53xit;
                index index.html index.htm;
                 }
                   error_page 500 502 503 504 /50x.html;
      location = 50x.html{
               root html;
               }
}
 
server {
      listen 20.0.0.33:8888;
      server_name 20.0.0.33:8888;
      charset utf-8;
      access_log logs/www.553xit.com.access.log;
      location /{
            root /var/www/html/553xit;
            index index.html index.htm;
             }
      error_page 500 502 503 504 /50x.html;
      location = 50x.html{
               root html;
               }
}

nginxサービスを再起動します。systemctl restart nginx

2.実機のブラウザにIPアドレス+ポート番号を入力します

おすすめ

転載: blog.csdn.net/XCsuperman/article/details/108613705