背景:最近學習瞭如何搭建Nginx服務器,學習貴在總結,總結才能提高。顆粒歸倉,下面就簡單的介紹一下Nginx服務器是個什麼東東,順便整理一下它的搭建流程。
一、什麼是Nginx
是一個使用c語言開發的高性能的http服務器及反向代理服務器。
Nginx是一款高性能的http 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器。由俄羅斯的程序設計師Igor Sysoev所開發,官方測試Nginx能夠支支撐5萬併發鏈接,並且cpu、內存等資源消耗卻非常低,運行非常穩定。
二、應用場景
1、http服務器。Nginx是一個http服務可以獨立提供http服務。可以做網頁靜態服務器。
2、虛擬主機。可以實現在一臺服務器虛擬出多個網站。例如個人網站使用的虛擬主機。
3、反向代理,負載均衡。當網站的訪問量達到一定程度後,單臺服務器不能滿足用戶的請求時,需要用多臺服務器集羣可以使用nginx做反向代理。並且多臺服務器可以平均分擔負載,不會因爲某臺服務器負載高宕機而某臺服務器閒置的情況。
三、安裝步驟
Nginx一般推薦安裝到Linux系統,而且要安裝c語言的編譯環境gcc。此處只介紹在Linux(CentOS6.5)環境下的安裝步驟。
1、下載壓縮包
2、安裝nginx依賴的包
gcc
安裝nginx需要先將官網下載的源碼進行編譯,編譯依賴gcc環境,如果沒有gcc環境,需要安裝gcc:
yum install gcc-c++
PCRE
PCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx的http模塊使用pcre來解析正則表達式,所以需要在linux上安裝pcre庫。
yum install -y pcre pcre-devel
注:pcre-devel是使用pcre開發的一個二次開發庫。nginx也需要此庫。
zlib
zlib庫提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。
yum install -y zlib zlib-devel
openssl
OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程序供測試或其它目的使用。
nginx不僅支持http協議,還支持https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫。
yum install -y openssl openssl-devel
3、上傳、解壓
把Nginx的源碼上傳到Linux系統中,並進行解壓縮。我使用的是WinSCP。
解壓:tar -zxf nginx-1.12.0.tar.gz
4、進行configure
cd /home/he/nginx-1.12.0 ,進入解壓後的nginx文件夾,粘貼下面的命令
注意:將臨時文件目錄指定爲/var/temp/nginx,需要在/var下創建temp及nginx目錄
./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
5、make
執行完4的configure,在nginx路徑下生成一個Makefile文件,在此目錄下make
6、make install
make命令執行完成後,執行make install命令。
7、啓動
cd /usr/local/nginx/sbin ,進入nginx的sbin目錄,./nginx就啓動Nginx。
8、測試
四、擴展
1、Nginx的配置
在/usr/local/nginx/conf目錄下nginx.conf文件是nginx的配置文件。
2、使用Nginx配置虛擬機
(1)通過端口區分虛擬機
在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;
}
}
域名介紹:
首先需要修改nginx.conf配置文件
server {
listen 80;
server_name test1.taotao.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-test3;
index index.html index.htm;
}
}
其次修改host文件指定域名的ip地址。Host文件的位置:C:\Windows\System32\drivers\etc
這個文件可以使用SwitchHosts工具來修改,打開這個工具後,會自動加載本機的host文件內容。
修改完成後重新啓動加載配置文件。測試。
五、學習心得
1、剛開始的時候感覺它挺難的,後來發現其實很簡單。“動手”纔是硬道理。
2、學習累了吧,來張美圖,賞心悅目一下~~~