Nginx,nginx配置
實現WWW服務的常用web軟體:nginx、apache。
經典流行的web組合lamp(linux apache mysql php)、lnmp(linux nginx mysql php)。
Nginx本身是一款靜態(html、js、css、jpg等)的www軟體,不能解析動態PHP、JSP、DO。
最大的特點:
1、靜態小檔案(1M),支援高並發,同時佔用的資源很少。30000並發,10個進程,記憶體消耗150M。
Nginx在windows、linux、unix都可以。
Nginx服務最大的功能:
1、www web服務、郵件服務、郵件代理。
2、負載平衡(反向 Proxyproxy)。
3、web cache(web緩衝),squid(CDN主要使用squid)。
Nginx特點:
1、配置簡單、靈活、輕量。
2、高並發(靜態小檔案),靜態幾萬的並發。
3、佔用資源少。
4、功能種類比較多(web、cache、proxy),每一功能都不是特彆強。
5、支援epoll模型。使得nginx可以支援高並發。apache使用select模型。
6、nginx可以配合動態PHP服務(fastcgi介面)。
7、利用nginx可以對IP限速,可限制串連數。
Nginx的應用場合
1、提供靜態服務(圖片、視頻服務),另一個lighttpd。幾萬並發。
2、提供動態服務,nginx+fastcgi的方式運行PHP、JSP。動態並發500-1500。(apache+php、lighttpd+fastcgi php)
3、反向 Proxy、負載平衡。日PV2000萬以下,都可以直接用nginx做反向 Proxy。(haproxy、F5、A10)
4、快取服務。類似squid、varnish、ats。
nginx支援虛擬機器主機
一個server標籤段就是一個虛擬機器主機。
1、基於網域名稱的虛擬機器主機。通過網域名稱來區分虛擬機器主機。應用:外部網站。
2、基於連接埠的虛擬機器主機。通過連接埠來區分虛擬機器主機。應用:公式內部網站,網站後台。
3、基於IP的虛擬機器主機。幾乎不用。不支援ifconfig別名,設定檔可以。
Nginx安裝
安裝PCRE
Pcre全稱(Perl Compatible Regular Expressions),中文perl相容Regex。
安裝OpenSSL
安裝nginx
啟動nginx
瀏覽器訪問
部署網站
建立一個index2.html。
瀏覽器訪問:http://192.168.31.134/index2.html
Nginx http功能模組匯總
ngx_http_core_module:包括一些核心的http參數配置,對應nginx的配置為http區塊部分。
ngx_http_access_module:存取控制模組,用來控制網站使用者對nginx的訪問。
ngx_http_gzip_module:壓縮模組,對nginx返回的資料壓縮,屬於效能最佳化模組。
ngx_http_fastcgi_module:fastcgi模組和Live App相關的模組,例如PHP。
ngx_http_proxy_module:proxy代理模組。
ngx_http_upstream_module:負載平衡模組,可以實現網站的負載平衡功能及節點的健全狀態檢查。
ngx_http_rewrite_module:URL地址修正模組。
ngx_http_limit_conn_module:限制使用者並發串連數及請求數模組。
ngx_http_limit_req_module:限制Nginx request processing rate根據定義的key。
ngx_http_log_module:訪問日誌模組,以指定的格式記錄nginx客戶訪問日誌等資訊。
ngx_http_anth_basic_module:web認證模組,設定web使用者通過帳號密碼訪問nginx。
ngx_http_ssl_module:ssl模組,用於加密的http串連,如https。
ngx_http_stub_status_module:記錄nginx基本訪問狀態資訊等的模組。
nginx.conf
搭建基於網域名稱的虛擬機器主機
通過瀏覽器訪問需要修改windows hosts檔案(C:\Windows\System32\drivers\etc),加入192.168.31.134 www.etiantian.org bbs.etiantian.org。
基於網域名稱的虛擬機器主機配置步驟
1、修改設定檔nginx.conf。
2、建立網站目錄
3、檢查文法,重新載入nginx。
4、配置hosts,測試。
基於連接埠的虛擬機器主機
基於IP的虛擬機器主機
刪除添加的IP