視訊課程連結:http://edu.51cto.com/course/14606.html
Nginx (engine x) 是一個高性能的HTTP和反向代理伺服器,也是一個IMAP/POP3/SMTP伺服器
Nginx可以作為一個Web伺服器進行網站的釋出,也可以作為反向代理伺服器進行負載均衡的實作
常見的Web伺服器:Tomcat、Apache、Nginx、Weblogic等
占用記憶體少、并發能力強
兩種方式:
源代碼安裝:需要編譯 ./configure ——> make ——> make install
線上安裝,參考:http://nginx.org/en/linux_packages.html
線上安裝:
下載下傳nginx認證檔案,并添加到apt-key中
配置apt源,添加nginx軟體源
更新apt軟體源,并安裝nginx
通路測試
http://ip位址
注:Nginx預設使用的是80端口
執行<code>whereis nginx</code>檢視
指令程式:
/usr/sbin/nginx
配置檔案:
/etc/nginx/nginx.conf
日志目錄:
/var/log/nginx/
預設虛拟主機目錄:
/usr/share/nginx/html
主配置檔案nginx.conf,包含三部分内容:全局配置、工作模式配置、HTTP配置
虛拟主機配置檔案/etc/nginx/conf.d/default.conf,可以定義多個虛拟主機配置檔案
将原配置檔案備份,養成資料備份的習慣
虛拟主機:把一台實體伺服器劃分為多個虛拟的伺服器,稱為虛拟主機
每個虛拟主機對應一個Web站點,其實就是在一台伺服器上搭建多個網站
步驟:
準備網站目錄及測試頁面
建立虛拟主機配置檔案并配置
實作虛拟主機的三種方式:
基于不同的IP
基于不同的端口
基于不同的域名
配置域名解析
在用戶端主機中配置域名解析
windows:C:\Windows\System32\drivers\etc\hosts
Linux/Mac:/etc/hosts
域名解析的過程:查找hosts檔案——>DNS
注:該方式僅是本地測試時使用的,實際應用中要購買注冊域名
使用Nginx作為圖檔伺服器:
上傳:使用ftp或sftp上傳圖檔到伺服器指定的ftp目錄下
下載下傳:通過通路Nginx伺服器來通路ftp目錄下的圖檔檔案,即使用HTTP請求來通路資源檔案,而不是通過FTP請求
步驟:
建立存放圖檔的檔案夾,并上傳圖檔到該目錄中
配置Nginx
通路url:http://ip/images 實際實體路徑:/home/soft01/www/images
通路
http://ip/images/xxx.img
/home/soft01
正常請求
用戶端發送請求到伺服器,伺服器接收請求并響應資料
正向代理
概念:位于用戶端和原始伺服器之間的伺服器,為了從原始伺服器擷取資料,用戶端向代理伺服器發送請求并指定請求目标(原始伺服器),然後代理伺服器将請求轉換給原始伺服器,并将響應的資料傳回給用戶端
正向代理是用戶端使用的,對用戶端進行代理,用戶端知道并主動使用代理
作用:
通路原來無法通路的資源(google、fackbook等),×××
可以做緩存,加速資源的通路
對用戶端上網進行認證授權
上網行為管理,記錄使用者通路記錄,對外隐藏使用者資訊
反向代理
概念:用戶端發送請求到伺服器(用戶端認為是原始伺服器,實際上是一台反向伺服器),反向代理伺服器接收請求并将請求轉發給内部網絡中的多台叢集伺服器,并将響應的資料傳回給用戶端
反向代理一般用于伺服器叢集、分布式等,實作負載均衡
負載均衡,提高處理和響應速度
保證内網的安全,隐藏伺服器資訊,防止Web×××
使用Nginx作為其他伺服器
建立虛拟主機配置檔案,并配置反向代理
http://tomcat.com
概念:将接收到的請求按照一定的規則分發到不同的伺服器進行處理,進而提高系統響應和處理速度,稱為負載均衡
準備網站(模拟淘寶,後面有多台伺服器)
建立虛拟主機配置檔案,并配置負載均衡
問題:tomcat在處理靜态資源時效率不高,預設情況下所有資源都由tomcat處理,會導緻Web應用響應慢,占用系統資源
解決:将靜态資源交由Nginx處理,動态資源仍由tomcat處理,實作動靜分離
實際上就是把Nginx作為靜态資源伺服器
編輯taobao.conf,配置動态分離
建立存放靜态資源的檔案夾,并将資源資源放到該目錄中
高并發的處理:
負載均衡:叢集
動靜分離:使用Nginx、CDN
緩存:以空間換時間,提高系統效率
限流:流量控制
降級:服務降載