1. 程式人生 > >ubuntu 16.04 Nginx原始碼部署安裝

ubuntu 16.04 Nginx原始碼部署安裝

nginx安裝

1、安裝zlib依賴庫:sudo apt-get install zlib1g-dev

2、進入解壓相關檔案:

tar –xzvf openssl-1.0.1.tar.gz

tar –xzvf nginx-1.11.3.tar.gz

tar –xzvf pcre-8.41. tar.gz,

  1. 進入Nginx解壓目錄:cd /home/jinxp/ nginx-1.11.3/
  2. 配置環境:

./configure  --prefix=/usr/local/nginx  --with-http_ssl_module  --with-http_flv_module  --with-http_stub_status_module   --with-http_gzip_static_module --with-pcre=../pcre-8.41  --with-openssl=../openssl-1.0.1

  1. 編譯:make(如果出現”pcre.h No such file or directory”,安裝”sudo apt-get install libpcre3-dev”)
  2. 安裝sudo make install
  3. 說明:nginx會被安裝在/usr/local/nginx目錄下

conf:存放配置檔案     html:靜態網頁    

logs:存放日誌檔案     sbin:存放可執行檔案

  1. 相關命令

啟動Nginx服務: sudo /usr/local/nginx/sbin/nginx

關閉Nginx服務: sudo /urs/local/nginx/sbin/nginx –s stop

重新載入配置:sudo /usr/local/nginx/sbin/nginx –s reload

指定配置檔案:sudo /usr/local/nginx/sbin/nginx –c /usr/local/nginx/conf/nginx.conf

檢視版本資訊:

sudo /usr/local/nginx/sbin/nginx –v

sudo /usr/local/nginx/sbin/nginx –V

檢視80埠的程式:nesta –ano | grep 80

關閉佔用80埠的程式:sudo fuser –k 80/tcp

  1. 啟動服務:sudo /usr/local/nginx/sbin/nginx 或cd切換到sbin目錄下執行./nginx

10、開啟瀏覽器,輸入Nginx伺服器IP地址

11、配置

(1)、/usr/local/nginx/conf/nginx.conf

(2)全域性設定:

定義全域性錯誤日誌檔案,需要什麼等級可以設定開啟

error_log  logs/error.log;

   #error_log  logs/error.log  notice;

   #error_log  logs/error.log  info;

worker_rlimit_nofile:指定一個nginx可以開啟的最多檔案描述符,可以使用“ulimit –n 65535”進行設定(虛擬機器預設設定1024),阿里雲伺服器預設就是65535

(3)events(nginx工作模式)

events {

use epoll;   linux標準的工作模式,nginx高效的基石

worker_connections  1024;    定義nginx每個程序的最大連線數

}

(4)http(http設定)

sendfile   on;   開啟高效檔案傳輸模式

tcp_nopush  on;   防止網路阻塞

tcp_nodelay  on;

keepalive_timeout  65;    設定客戶端連線活動的超時時間

gzip on;   使用壓縮模組

(5)server(主機設定)

server{

  listen          80;

  server_name    localhsot www.lajos.top 39.105.61.52;

  charser utf-8;

# 負載均衡模組,upstream是負載均衡器

upstream lajos {

server 39.105.61.52:8000 weight=1 max_fails=1 fail_timeout=300s;

server 39.105.61.53:8000 weight=1 max_fails=1 fail_timeout=300s;

}

  # 負載均衡採用輪循方式

  server server 39.105.61.52:8000 weight=1 max_fails=1 fail_timeout=300s;

}

  # 反向代理配置,

  location / {

#適用於django自帶的runserver方式啟動

#proxy_set_header Host $http_host;

# 設定uwsgi啟動

include uwsgi_params;

uwsgi_pass lajos;

  }

}

12、重啟nginx服務:sudo /usr/local/nginx/sbin/nginx