Nginx快速搭建和基本使用

  • 2019 年 12 月 31 日
  • 筆記

2019年第 83 篇文章,總第 107 篇文章

最近在工作中項目需要上線,所以也了解到關於一些部署上線的知識內容,Nginx 就是其中一個知識點,主要是可以用它來進行負載均衡,本文的目錄如下:

  • 簡介
  • 安裝配置
  • 基本使用

簡介

關於Nginx,來自維基百科的介紹(https://zh.wikipedia.org/wiki/Nginx):

Nginx(發音同「engine X」)是非同步框架的網頁伺服器,也可以用作反向代理、負載平衡器和 HTTP 快取。

Nginx 使用非同步事件驅動的方法來處理請求,相比於 Apache、lighttpd 具有佔有記憶體少,穩定性高、並發服務能力強等優勢,根據官方測試結果,可以支援五萬個並行連接,而在實際的運作中,可以支援兩萬至四萬個並行連接。


安裝配置

安裝gcc和gcc-c++

首先需要安裝 gcc 和 gcc-c++,在centos下安裝的命令:

yum install gcc gcc-c++

安裝 PCRE 庫

wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz  tar -zxvf pcre-8.33.tar.gz  cd pcre-8.33  ./configure  make && make install

安裝 Perl 5

參考文章:https://blog.csdn.net/qq_20678155/article/details/68926562

// 下載安裝包  wget http://www.cpan.org/src/5.0/perl-5.16.1.tar.gz    // 解壓源碼包  tar -xzf perl-5.16.1.tar.gz    // 進入源碼目錄  cd perl-5.16.1    //自定義安裝目錄  ./Configure -des -Dusethreads -Dprefix=/usr/local/perl    // 下面這三個命令要依次都執行,這是在編譯源碼  make  make test  make install      // 查看版本  perl -v  

安裝 openssl

wget http://www.openssl.org/source/openssl-1.0.1j.tar.gz  tar -zxvf openssl-1.0.1j.tar.gz  cd openssl-1.0.1j  ./config  make && make install

安裝 zlib

wget http://zlib.net/zlib-1.2.11.tar.gz  tar -zxvf zlib-1.2.11.tar.gz  ./configure  make && make install

安裝 nginx

# nginx  wget http://nginx.org/download/nginx-1.8.0.tar.gz  tar -zxvf nginx-1.8.0.tar.gz  cd nginx-1.8.0  ./configure --prefix=/usr/local/nginx  make && make install

nginx 測試

/usr/local/nginx/sbin/nginx -t # 測試一下配置文件是否正確  /usr/local/nginx/sbin/nginx # 啟動  curl -X GET localhost:80 # 出現 Welcome to nginx! 則表示 Nginx 已經安裝並運行成功  # /usr/local/nginx/sbin/nginx –s reload  /usr/local/nginx/sbin/nginx –s stop

基本使用

常用命令

nginx -v # version info  rpm -ql nginx  nginx -V    systemctl start/stop/status/restart/reload nginx  # reload, restart 都是重複服務,但 reload 並不需要關閉服務

配置

使用的話,需要修改在 /usr/local/nginx/conf文件夾的配置文件 nginx.conf 中下面的內容:

http {      ...      upstream ip0 {        server ip1:port1;        server ip2:port2;        ...    }      server {        listen port0;        server_name ip0;        ...        location / {            proxy_pass ip0;        }        ...    }    ...  }

這裡是請求 ip0:port0 ,然後 nginx 會將請求轉發到 ip1:port1, ip2:port2,... 上,也就是說,配置 nginx 的機器的ip就是 ip1,然後設置一個埠 port0,而 ip1,ip2 等則是運行服務的機器,由於 nginx 也是需要佔用 cpu 的,所以建議單獨用一台機器配置nginx,並且在配置文件中可以設置開啟多進程,只需要修改 work_process 後的數字,通常設置為機器的cpu的核數量-1的數量。

Tags: