Linux Nginx安裝與配置(1)

一. Nginx 簡介與作用

a.高性能HTTP服務器 

b.可做反向代理

c.IMAP/POP3/SMTP 代理服務器 

二. 特點

a.內存佔用少

b.併發能力強

c.輕量級的Web 服務器

三. 安裝依賴

1. rewrite模塊需要 pcre 庫
2. gzip模塊需要 zlib 庫
3. ssl 功能需要openssl
+++++++下載地址 
三個tar包下載之後分別解壓
a. 安裝openssl
1.解壓 tar -zxvf openssl-fips-ecp-2.0.9.tar.gz
2.進入目錄 cd openssl-fips-ecp-2.0.9/
3.執行 ./config
4.編譯 make
5.安裝 make install
b. 安裝zlib庫
1.解壓 tar -zxvf zlib-1.2.11.tar.gz
2.進入目錄 cd zlib-1.2.11/
3.執行 ./configure 
4.編譯 make
5.安裝 make install
c. 安裝pcre庫
1.解壓 tar -zxvf download
2.進入目錄 cd pcre-8.21/
3.執行 ./configure 
4.編譯 make
5.安裝 make install

四. 安裝nginx


1.  wget http://nginx.org/download/nginx-1.7.10.tar.gz

2.  tar -zxvf nginx-1.7.10.tar.gz

3.  cd nginx-1.7.10/

4.  ./configure --with-pcre=../pcre-8.21 --with-zlib=../zlib-1.2.11 --with-openssl=../openssl-fips--ecp-2.0.9 

5.  make

6.  sudo make install


安裝完成! 檢查是否安裝成功

1.   cd   /usr/local/nginx/sbin

2. sudo ./nginx -t



五. 啓動

sudo ./nginx

查看端口




以上大部分參考  http://www.cnblogs.com/dennisit/archive/2012/12/26/2834719.html  感謝此博主


六.參數配置


安裝完Nginx之後在目錄 /usr/local/nginx/conf 中可以看到

主配置文件nginx.conf ,文件主要分成四部分:main(全局設置)、server(主機設置)、upstream(負載均衡服務器設置)和 location(URL匹配特定位置的設置)

main部分設置的指令將影響其他所有設置;server部分的指令主要用於指定主機和端口;upstream指令主要用於負載均衡,設置一系列的後端服務器;location部分用於匹配網

頁位置。這四者之間的關係式:server繼承main,location繼承server,upstream既不會繼承其他設置也不會被繼承

下面我們一起看一下,具體設置與參數


#user  nobody;   #user是個主模塊指令,指定Nginx Worker進程運行用戶以及用戶組

worker_processes 1;    #主模塊指令,指定了Nginx要開啓的進程數,每個Nginx進程平均耗費10M~12M內存。根據經驗,一般指定一個進程足夠了,如果是多核CPU,建議

指定和CPU的數量一樣的進程數即可

#error_log  logs/error.log; #error_log是個主模塊指令,用來定義全局錯誤日誌文件。日誌輸出級別有debug、info、notice、warn、error
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid; #主模塊指令,用來指定進程id的存儲文件位置


#此模塊中可以指定Nginx 的工作模式與連接上線

events {

    use epoll;#use是個事件模塊指令,用來指定Nginx的工作模式。Nginx支持的工作模式有select、poll、kqueue、epoll、rtsig和/dev/poll。其中select和poll都是標準的工作模式,kqueue和epoll是高效的工作模式,不同的是epoll用在Linux平臺上,而kqueue用在BSD系統中。對於Linux系統,epoll工作模式是首選。


    worker_connections  1024;
}



配置文件樣例:


#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;


events {
    worker_connections  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;
    
    
		#upstream backend {
			#ip_hash;
			#server 127.0.0.1:8089 weight=5;
			#server 127.0.0.1:8090 weight=5;
		#}


    server {
        listen       80;
        server_name  127.0.0.1;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location /simland-app-service/ {  
					proxy_connect_timeout   3;  
					proxy_send_timeout      30;  
					proxy_read_timeout      30;  
					proxy_pass http://localhost:8081/simland-app-service/;  
        }  

        location /solr/ {  
					proxy_connect_timeout   3;  
					proxy_send_timeout      30;  
					proxy_read_timeout      30;  
					proxy_pass http://localhost:8081/solr;  
        }

        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
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}




發佈了21 篇原創文章 · 獲贊 2 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章