天天看點

1、nginx入門篇之--安裝

  1. 安裝準備

    nginx可以到官網 http://nginx.org 下載下傳,各個平台的根據自己需要下載下傳即可,這裡主要講在linux的環境下的安裝,因為我們一般也隻用在linux的環境上面。

    開始之前,編譯環境gcc g++ 開發庫之類的需要提前裝好,這裡預設你已經裝好。ububtu平台編譯環境可以使用以下指令:

apt-get install build-essential
apt-get install libtool
           

Centos平台編譯環境使用如下指令:

安裝make:

yum -y install gcc automake autoconf libtool make
           

 安裝g++:

yum install gcc gcc-c++
           

    2.準備環境安裝好後下面還需要先安裝pcre、zlib,pcre可以用來重寫路由規則,zlib是為了gzip壓縮用到。

  • 標明需要安裝的目錄,例如:/usr/local/src。
  • 安裝pcre。
cd /usr/local/src
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.37.tar.gz 
tar -zxvf pcre-8.37.tar.gz
cd pcre-8.34
./configure
make
make install
           
  • 安裝zlib庫。
cd /usr/local/src
 
wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make install
           

    3.安裝nginx 

cd /usr/local/src
wget http://nginx.org/download/nginx-1.11.12.tar.gz
tar -zxvf nginx-1.11.12.tar.gz
cd nginx-1.11.12
 
./configure --sbin-path=/usr/local/nginx/ \
--conf-path=/usr/local/nginx/nginx.conf \
--pid-path=/usr/local/nginx/nginx.pid \
--with-http_ssl_module \
--with-pcre=/opt/app/openet/oetal1/chenhe/pcre-8.37 \
--with-zlib=/opt/app/openet/oetal1/chenhe/zlib-1.2.8 \
 
make && make install
           

--with-pcre=/usr/src/pcre-8.34 指的是pcre-8.34 的源碼路徑。

--with-zlib=/usr/src/zlib-1.2.7 指的是zlib-1.2.7 的源碼路徑。

安裝成功後 /usr/local/nginx 目錄下如下:

conf html logs sbin
           

    4.啟動nginx

確定系統的 80 端口沒被其他程式占用,cd /usr/local/nginx/sbin 運作:./nginx  指令來啟動 Nginx。

netstat -antp

如果存在其他占用的程序可以殺掉指令為:kill -9 程序号
           

此時啟動成功。可以看到 welcome to nginx等字樣,說明已經安裝成功。注意:如果你是跨機器通路的話,防火牆還必須開啟允許80端口的通路。

ps:nginx的編譯選項以及配置說明

make是用來編譯的,它從Makefile中讀取指令,然後編譯。

make install是用來安裝的,它也從Makefile中讀取指令,安裝到指定的位置。

configure指令是用來檢測你的安裝平台的目标特征的。它定義了系統的各個方面,包括nginx的被允許使用的連接配接處理的方法,比如它會檢測你是不是有CC或GCC,并不是需要CC或GCC,它是個shell腳本,執行結束時,它會建立一個Makefile檔案。nginx的configure指令支援以下參數:

--prefix=path  定義一個目錄,存放伺服器上的檔案 ,也就是nginx的安裝目錄。預設使用 /usr/local/nginx。
--sbin-path=path 設定nginx的可執行檔案的路徑,預設為  prefix/sbin/nginx.
--conf-path=path  設定在nginx.conf配置檔案的路徑。nginx允許使用不同的配置檔案啟動,通過指令行中的-c選項。預設為prefix/conf/nginx.conf.
--pid-path=path  設定nginx.pid檔案,将存儲的主程序的程序号。安裝完成後,可以随時改變的檔案名 , 在nginx.conf配置檔案中使用 PID指令。預設情況下,檔案名 為prefix/logs/nginx.pid.
--error-log-path=path 設定主錯誤,警告,和診斷檔案的名稱。安裝完成後,可以随時改變的檔案名 ,在nginx.conf配置檔案中 使用 的error_log指令。預設情況下,檔案名 為prefix/logs/error.log.
--http-log-path=path  設定主請求的HTTP伺服器的日志檔案的名稱。安裝完成後,可以随時改變的檔案名 ,在nginx.conf配置檔案中 使用 的access_log指令。預設情況下,檔案名 為prefix/logs/access.log.
--user=name  設定nginx工作程序的使用者。安裝完成後,可以随時更改的名稱在nginx.conf配置檔案中 使用的 user指令。預設的使用者名是nobody。
--group=name  設定nginx工作程序的使用者組。安裝完成後,可以随時更改的名稱在nginx.conf配置檔案中 使用的 user指令。預設的為非特權使用者。
--with-select_module --without-select_module 啟用或禁用建構一個子產品來允許伺服器使用select()方法。該子產品将自動建立,如果平台不支援的kqueue,epoll,rtsig或/dev/poll。
--with-poll_module --without-poll_module 啟用或禁用建構一個子產品來允許伺服器使用poll()方法。該子產品将自動建立,如果平台不支援的kqueue,epoll,rtsig或/dev/poll。
--without-http_gzip_module — 不編譯壓縮的HTTP伺服器的響應子產品。編譯并運作此子產品需要zlib庫。
--without-http_rewrite_module  不編譯重寫子產品。編譯并運作此子產品需要PCRE庫支援。
--without-http_proxy_module — 不編譯http_proxy子產品。
--with-http_ssl_module — 使用https協定子產品。預設情況下,該子產品沒有被建構。建立并運作此子產品的OpenSSL庫是必需的。
--with-pcre=path — 設定PCRE庫的源碼路徑。PCRE庫的源碼(版本4.4 - 8.30)需要從PCRE網站下載下傳并解壓。其餘的工作是Nginx的./ configure和make來完成。正規表達式使用在location指令和 ngx_http_rewrite_module 子產品中。
--with-pcre-jit —編譯PCRE包含“just-in-time compilation”(1.1.12中, pcre_jit指令)。
--with-zlib=path —設定的zlib庫的源碼路徑。要下載下傳從 zlib(版本1.1.3 - 1.2.5)的并解壓。其餘的工作是Nginx的./ configure和make完成。ngx_http_gzip_module子產品需要使用zlib 。
--with-cc-opt=parameters — 設定額外的參數将被添加到CFLAGS變量。例如,當你在FreeBSD上使用PCRE庫時需要使用:--with-cc-opt="-I /usr/local/include。.如需要需要增加 select()支援的檔案數量:--with-cc-opt="-D FD_SETSIZE=2048".
--with-ld-opt=parameters —設定附加的參數,将用于在連結期間。例如,當在FreeBSD下使用該系統的PCRE庫,應指定:--with-ld-opt="-L /usr/local/lib".


例如:
./configure
    --sbin-path=/usr/local/nginx/
    --conf-path=/usr/local/nginx/nginx.conf
    --pid-path=/usr/local/nginx/nginx.pid
    --with-http_ssl_module
    --with-pcre=../pcre-4.4
    --with-zlib=../zlib-1.1.3



           

自此nginx的安裝已經完成,接下來是學習其它一些使用方法了。

轉載于:https://my.oschina.net/duanxianme/blog/872540

繼續閱讀