一、什麼是ngnix?
Ninix是一款高性能的http服務器、反向代理服務器、電子郵件代理服務器。官方測試ngnix能夠支撐5萬的併發連接,並且cpu、內存等資源消耗非常低,運行非常的穩定。
二、應用場景有哪些?
1.http服務器。ninix是一個http服務器可以獨立提供http服務。可以做靜態網頁服務器。
2.虛擬主機。可以實現在一臺服務器虛擬出多個網站。例如個人網站使用的虛擬主機
3.反向代理、負載均衡
三、ngnix的安裝準備?
(一)安裝環境
1.下載地址:http://ngnix.org
2.要求的安裝環境
(1)需要安裝gcc的環境 yum install-c++
(2)第三方的開發包
- PCRE
PCRE(Perl Compatible Regular Expressions)是一個per庫,包括perl兼容的正則表達式。ngnix的http模塊使用pcre來解析正則表達式。所有需要在linux上安裝pcre庫。
yum install -y pcre pcre-devel
- zlib
zlib庫提供了很多種壓縮和解壓縮的方式。ngnix使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。
yum install -y zlib zlib-devel
- openssl
OpenSSL是一個強大的安全套接字層密碼庫,囊括主要的密碼算法,常用的祕鑰和證書封裝管理功能以及SSL協議,並提供豐富的應用程序供測試或其他目的使用
ngnix不僅支持http協議,還支持https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫
四、ngnix的安裝步驟
第一步:把ngnix的源碼包上傳到linux系統
第二步:解壓縮 tar zxf ngnix-1.8.0.tar.gz
第三步:使用configure命令創建一個makeFile文件
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
注意:啓動ngnix之前,上邊將臨時文件目錄指定爲/var/temp/ngnix,需要在/var下創建temp及ngnix目錄
mkdir /var/temp/ngnix/client -p
第四步:make
第五步:make install
五、ngnix的使用
- 啓動ngnix
進入sbin目錄 ./ngnix
- 關閉ngnix
./ngnix -s stop
推薦使用 ./ngnix -s quit
- 重啓ngnix
- .先關閉後啓動
- .刷新配置文件 ./ngnix is reload
- 訪問ngnix
默認80端口
注意:是否關閉防火牆
六、配置虛擬主機
就是在一臺服務器上啓動多個網站
如何區分不同的網站
1.域名不同
2.端口號不同
(一)通過端口號區分不同的虛擬主機
Ngnix的配置文件 /usr/local/ninix/conf/ngnix.conf
可以配置多個server,配置了多個虛擬主機。
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
}
server {
listen 81;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-81;
index index.html index.htm;
}
}
重新加載配置文件 sbin/nginx -s reload
(二)通過域名區分虛擬主機
1.域名就是就是網站
2.DNS服務器:把域名解析爲ip地址。保存的就是域名和IP的映射關係3
3.一個域名對應一個ip地址,一個ip地址可以被多個域名綁定。