是一個使用c語言開發的高性能的http服務器及反向代理服務器。html
Nginx是一款高性能的http 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器。由俄羅斯的程序設計師Igor Sysoev所開發,官方測試nginx可以支支撐5萬併發連接,而且cpu、內存等資源消耗卻很是低,運行很是穩定。linux
一、http服務器。Nginx是一個http服務能夠獨立提供http服務。能夠作網頁靜態服務器。nginx
二、虛擬主機。能夠實如今一臺服務器虛擬出多個網站。例如我的網站使用的虛擬主機。c++
三、反向代理,負載均衡。當網站的訪問量達到必定程度後,單臺服務器不能知足用戶的請求時,須要用多臺服務器集羣可使用nginx作反向代理。而且多臺服務器能夠平均分擔負載,不會由於某臺服務器負載高宕機而某臺服務器閒置的狀況。正則表達式
Nginx通常推薦安裝到linux系統,並且要安裝c語言的編譯環境gcc。算法
進入http://nginx.org/en/download.html 下載nginx1.8.0版本(當前最新穩定版本)。vim
nginx是C語言開發,建議在linux上運行,本教程使用Centos6.5做爲安裝環境。瀏覽器
1) 安裝nginx須要先將官網下載的源碼進行編譯,編譯依賴gcc環境,若是沒有gcc環境,須要安裝gcc:安全
yum install -y gcc gcc-c++
2) PCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx的http模塊使用pcre來解析正則表達式,因此須要在linux上安裝pcre庫。服務器
yum install -y pcre pcre-devel
注:pcre-devel是使用pcre開發的一個二次開發庫。nginx也須要此庫。
3) zlib庫提供了不少種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,因此須要在linux上安裝zlib庫。
yum install -y zlib zlib-devel
4) OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、經常使用的密鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程序供測試或其它目的使用。
nginx不只支持http協議,還支持https(即在ssl協議上傳輸http),因此須要在linux安裝openssl庫。
yum install -y openssl openssl-devel
第一步:下載nginx,並把nginx的源碼上傳到linux系統:
wget http://nginx.org/download/nginx-1.8.1.tar.gz
第二步:把壓縮包解壓縮:
tar -zxvf nginx-1.8.1.tar.gz
第三步:進入nginx目錄下,並進行configure。
cd nginx-1.8.0
./configure
第四步:
make
第五步:
make install
或者編譯到指定路徑下:(推薦)
make install PREFIX=/usr/local/nginx
1、啓動:進入nginx的sbin目錄下 啓動:
cd /usr/local/nginx/sbin
./nginx
打開瀏覽器訪問此機器的 IP,若是瀏覽器出現 Welcome to nginx! 則表示 Nginx 已經安裝並運行成功。
若是訪問不到,首先查看防火牆是否關閉。
2、關閉nginx:(3種方法)
可使用kill命令,可是不推薦使用。
1)
./nginx -s stop
2)查看進程號,殺死進程,不推薦
ps -ef|grep nginx
kill -9 xxx
3)強制中止
pkill -9 nginx
三、刷新配置:
./nginx -s reload
在/usr/local/nginx/conf目錄下nginx.conf文件是nginx的配置文件。
vim /usr/local/nginx/conf/nginx.conf
驗證配置文件:
/usr/local/nginx/sbin/nginx -t
在nginx.conf文件中添加一個Service節點,修改端口號就能夠
server { listen 81; server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / { root html81; index index.html index.htm; } } |
能夠經過修改host文件指定域名的ip地址。
Host文件的位置:C:\Windows\System32\drivers\etc
可使用工具:
須要修改nginx.conf配置文件。
server { listen 80; server_name test3.taotao.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / { root html-test3; index index.html index.htm; } } |
注意:修改配置後須要從新加載配置文件。/usr/local/nginx/sbin/nginx -s reload