日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

一 Nginx簡介

1.1 什么是Nginx

Nginx是一個高性能的http和反向代理服務器,其特點是占用內存小,并發能力強。Nginx專為性能優化而開發,性能是其最重要的考量,能經受高負載的考驗,有報告表明能支持高達50000個并發連接數。

1.2 反向代理

正向代理:在瀏覽器中配置代理服務器,通過代理服務器進行互聯網訪問。

反向代理:將請求發送到反向代理服務器,由反向代理服務器去選擇目標服務器獲取數據后,再返回給客戶端,此時反向代理服務器和目標服務器對外就是一個服務器,暴漏的是代理服務器地址。

1.3 負載均衡

如果請求數過大,單個服務器解決不了,我們增加服務器的數量,然后將請求分發到各個服務器上,將原先請求集中到單個服務器的情況改為請求分發到多個服務器上,就是負載均衡。

1.4 動靜分離

為了加快服務器的解析速度,可以把動態頁面和靜態頁面交給不同的服務器來解析,加快解析速度,降低原來單個服務器的壓力。

二 Nginx的安裝

Nginx需要幾個依賴包,分別是pcreopensslzlib,在安裝nginx之前需要先安裝這幾個依賴。

2.1 安裝pcre依賴

  1. 使用命令下載pcre壓縮包

1wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz

登錄后復制

  1. 解壓壓縮文件

1tar -xvf  pcre-8.37.tar.gz

登錄后復制

  1. 進入解壓后的名錄,執行以下命令

1./configure

登錄后復制

  1. 使用以下命令進行編譯安裝

1make && make install

登錄后復制

  1. 查看安裝的pcre版本號

1pcre-config --version

登錄后復制

2.2 安裝openssl,zlib等依賴

1yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

登錄后復制

2.3 安裝nginx

  1. nginx官網下載nginx,官網地址:https://nginx.org/download/;

  2. 將壓縮包拖到服務器上;

  3. 使用命令tar -xvf nginx-1.12.2.tar.gz解壓壓縮包;

  4. 使用命令./configure檢查;

  5. 使用命令make && make isntall編譯安裝;

安裝成功后,在usr會多出來一個文件夾,local/nginx,在nginxsbin文件夾下有啟動腳本。

2.4 啟動nginx

/usr/local/nginx/sbin文件夾下,使用以下命令啟動

1./nginx

登錄后復制登錄后復制

然后瀏覽器訪問服務器ip,nginx默認端口是80,出現以下頁面則證明nginx安裝成功;

2.5 Nginx常用的命令

使用這些命令時需要進入/usr/local/nginx/sbin文件夾

  • 查看nginx的版本號

    1./nginx -v

    登錄后復制

    • 啟動nginx

      1./nginx

      登錄后復制登錄后復制

      • 關閉nginx

        1./nginx -s stop

        登錄后復制

        • 重新加載nginx

          1./nginx -s reload

          登錄后復制

          2.6 Nginx的配置文件

          nginx的配置文件在/usr/local/nginx/conf中的nginx.conf。我們將nginx.conf中注釋的內容刪除一下。

           1#user  nobody;
           2worker_processes  1;
           3
           4#pid        logs/nginx.pid;
           5
           6events {
           7    worker_connections  1024;
           8}
           9
          10http {
          11    include       mime.types;
          12    default_type  application/octet-stream;
          13
          14    sendfile        on;
          15    #tcp_nopush     on;
          16
          17    #keepalive_timeout  0;
          18    keepalive_timeout  65;
          19
          20    #gzip  on;
          21
          22    server {
          23        listen       80;
          24        server_name  localhost;
          25
          26        location / {
          27            root   html;
          28            index  index.html index.htm;
          29        }
          30    }
          31}

          登錄后復制

          nginx的配置文件包含三部門。

          1.全局塊

          從配置文件開始到events塊之間的內容,主要會設置一些nginx服務器整體運行的配置指令。

          1worker_processes  1;

          登錄后復制

          這個代表nginx處理并發的關鍵配置,值越大,處理并發能力越強。但是會受到硬件、軟件等約束。

          2.events塊

          events塊涉及的指令主要影響nginx服務器與用戶網絡的連接。

          1worker_connections  1024;

          登錄后復制

          這個代表nginx支持的最大連接數。

          3.http全局塊

          nginx服務器配置最頻繁的部分。http全局塊包含http塊server塊

          三 Nginx配置反向代理

          3.1 ngix代理流程

          本地瀏覽器訪問nginx服務器,nginx服務器反向代理tomcat服務器,當我們請求nginx的時候直接訪問到tomcattomcat的安裝這里就不在講了,我將tomcatnginx安裝在了同一臺服務器上。

          3.2 配置ip和域名的綁定關系

          由于我們的nginx沒有域名,為了演示,因此我們在本地host文件中配置nginx服務器ip和域名進行綁定。這個host文件的具體位置在C:\Windows\System32\drivers\etc。在host文件中增加一句配置:

          147.104.xxx.xxx www.javatrip.com

          登錄后復制

          前面的ip是服務器的ip地址,后面的域名是我隨便起的用于綁定這個ip的一個域名。配置好之后,我們使用域名訪問一下tomcat,如果能請求到tomcat默認頁面,則配置成功。

          3.3 在nginx配置請求轉發

          1  server {
          2        listen       80;
          3        server_name  localhost;
          4
          5        location / {
          6            root   html;
          7            index  index.html index.htm;
          8        }
          9  }

          登錄后復制

          我們將以上默認的配置文件做個修改:

           1server {
           2    listen       80;
           3    server_name  47.104.xxx.xxx;
           4
           5    location / {
           6        root   html;
           7        proxy_pass http://127.0.0.1:8080;
           8        index  index.html index.htm;
           9    }
          10}

          登錄后復制

          以上這段配置的意思就是請求是47.104.xxx.xxx:80,都會轉發至47.104.xxx.xxx:8080

          現在瀏覽器訪問www.javatrip.com,發現直接轉發到了tomcat上了,這樣簡單的反向代理就完成了。

          3.4 根據請求后綴分發

          我們再解壓一個tomcat,端口號設置為8081,分別在兩個tomcatwebapps目錄下面新建devprod目錄,然后在該目錄下寫一個文件。

          將請求www.javatrip.com:7001/dev轉發到tomcat8080,將請求www.javatrip.com:7001/prod轉發到tomcat8081。現在我們的nginx監聽的端口號是7001。打開nginx的配置文件,新建一個server如下:

           1server {
           2    listen       7001;
           3    server_name  47.104.xxx.xxx;
           4
           5    location ~ /dev/ {
           6        proxy_pass http://127.0.0.1:8080;
           7    }
           8
           9    location ~ /prod/ {
          10        proxy_pass http://127.0.0.1:8081;
          11    }
          12}

          登錄后復制

          然后試試效果,分別訪問www.javatrip.com:7001/dev/a.html和www.javatrip.com:7001/prod/a.html,效果如下:

          其中,配置轉發的時候用到了~,其含義內容如下:

          • = 嚴格匹配。如果這個查詢匹配,那么將停止搜索并立即處理此請求。

          • ~ 為區分大小寫匹配(可用正則表達式)

          • !~為區分大小寫不匹配

          • ~* 為不區分大小寫匹配(可用正則表達式)

          • !~*為不區分大小寫不匹配

          • ^~ 如果把這個前綴用于一個常規字符串,那么告訴nginx如果路徑匹配那么不測試正則表達式。

            四 Nginx配置負載均衡

            4.1 什么是負載均衡

            負載均衡(Load Balance),意思是將負載(工作任務,訪問請求)進行平衡、分攤到多個操作單元(服務器,組件)上進行執行。是解決高性能,單點故障(高可用),擴展性(水平伸縮)的終極解決方案。

            現在我們想實現的效果是通過訪問www.javatrip.com:7001/prod/a.html,將請求分別分發到兩個tomcat上面去,首先我們在tomcat8080上新建一個prod的文件夾,里面放一個a.html的文件。這樣tomcat8081tomcat8080兩個上就都有了一個prod的文件加且里面有一個a.html的文件。

            4.2 配置nginx.conf

            首先,在http塊中配置兩個tomcat的服務列表

            1upstream myserver{
            2    server 127.0.0.1:8080;
            3    server 127.0.0.1:8081;
            4}

            登錄后復制登錄后復制

            其次,在server塊中配置規則:

             1server {
             2    listen       80;
             3    server_name  47.104.xxx.xxx;
             4
             5    location / {
             6        root   html;
             7        proxy_pass http://myserver;
             8        index  index.html index.htm;
             9    }
            10}

            登錄后復制

            4.3 測試效果

            訪問地址:www.javatrip.com:7001/prod/a.html,多刷新幾次。發現有的請求到tomcat8080上,有的請求到tomcat8081上。

            4.4 nginx支持的幾種負載策略

            • 輪詢(默認):每個請求按時間順序逐一分配到不同的服務器,如果服務器down了,會自動剔除。

              1upstream myserver{
              2    server 127.0.0.1:8080;
              3    server 127.0.0.1:8081;
              4}

              登錄后復制登錄后復制

              • weight(權重):默認為1,權重越高,分配的請求越多。

                1upstream myserver{
                2    server 127.0.0.1:8080 weight=1;
                3    server 127.0.0.1:8081 weight=2;
                4}

                登錄后復制

                • ip hash:每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個后臺服務器,可以解決session的問題。

                  1upstream myserver{
                  2    ip_hash;
                  3    server 127.0.0.1:8080;
                  4    server 127.0.0.1:8081;
                  5}

                  登錄后復制

                  • fair(第三方):按后端響應時間進行分配,響應時間越短分配的請求越多。

                    1upstream myserver{
                    2    server 127.0.0.1:8080;
                    3    server 127.0.0.1:8081;
                    4    fair;
                    5}

                    登錄后復制

                    由于動靜分離在實際開發中也不常用,就不再寫了。本篇文章做為一個nginx入門,到這里就基本完結了。最后留給大家一個問題思考一下:如何保證nginx的高可用?

以上就是Nginx超簡單教程,入門看這篇就夠了的詳細內容,更多請關注www.92cms.cn其它相關文章!

分享到:
標簽:入門 就夠了 教程 簡單 這篇
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定