nginx 入門之理論基礎(-)
NGINX
多節點 需要多quorum以及stonith,叢集檔案系統雙主模型的DRBD GFS檔案系統
《從零構建叢集》
nginx:2002年Igor Sysoev 開發,2004年成為一個開源專案,有35.5M使用者來使用,國內例如QQ 163 126,特點:具有出色的效能、可靠性、外掛化結構、簡單的配置、低資源佔用率。
使用epoll的I/O模型,基於事件驅動使用非同步的方式執行,響應速度快記憶體佔用低,使用邊緣觸發、水平觸發來提高響應率,wordpress、sourceforge都使用nginx。
功能:
它可以作為一個WEB伺服器來使用;
也可以作為WEB的反向代理伺服器,web reverse proxy
它同樣可以作為SMTP反向代理伺服器(較少使用)
LNMP:與PHP搭配向外提供動態網頁服務,且必須基於FastCGI的結構來提供服務。
URL重寫:
epoll模型,功能強勁,
Ps:德國的lighttpd使用lua指令碼,效能與nginx不相上下;
GNU發音[genu:] Gnome[genom]
代理伺服器:
工作在應用層,將客戶端的請求進行轉發,但在使用者始終認為proxy為請求資源的網站,在客戶端看來可以是一個集網站於一身的伺服器;對已proxy來說,接到客戶端的請求,再由自己對使用者請求進行分析後,在想目的資源發起請求,獲取資源後在有自己傳送非客戶端。
proxy具有防火牆功能,能夠分析資料包內容,來遮蔽定義的內容;
proxy的通訊加速功能:接收到使用者請求先查詢本地快取,命中直接反饋資訊,未命中則發起服務,從而大大節約頻寬資源。
跟NAT的區別:
nat在網路層,將使用者請求資料包進行地址轉換後,發給目的地址,對客戶端來說代理伺服器是透明的。
反向代理web reverse proxy:
向外部宣稱自己提供內網的所有服務,對外網來說將各種服務請求全部發給proxy,再由proxy進行想內網轉發;此時,proxy也是先查詢本地快取,命中直接反饋,未命中再向後端伺服器發出請求,這就是“反向代理”;注意一般來說只快取靜態內容(新聞、圖片等),動態內容一般不進行快取(賬號密碼、論壇發帖等)。
配置檔案:
events{}
#併發事件數
worker_processes
#cpu核的個數
http{
sendfile on;
#核心空間的系統呼叫,直接將使用者呼叫的檔案從核心直接傳送到網路卡;僅對小於1K的檔案才有效,否則必須要到使用者空間。
keepalive_timeout 65;
#持久連線的超時時間
}
server{
#每一個虛擬主機就需要一個server段
}
location / {
root html;#根是html(如不註明絕對路徑,則相對於安裝路徑來說)
#或改成/web帶有絕對路徑
index index.html index.htm;
}
#定義特定路徑下的網頁檔案具有的訪問特徵(訪問許可權、訪問屬性)
location後可跟如下字元
/:直接根目錄,只要在目錄下都匹配
=:精確匹配,必須訪問目錄本身
~:
~*:不區分大小寫的正規表示式匹配
^~:禁用搜尋路徑時的正規表示式功能
注意:非正規表示式的優先順序要高;
子目錄的優先順序較高,如果沒有定義子目錄就進行全域性搜尋
location / { #相對路徑
root /web;#根目錄
index index.html index.htm;
}
#/web/
location /bbs { #相對路徑
root /bbs; #根目錄
index bbs.index;
allow 192.168.0.0/24; #訪問控制
deny all;
}
#/bbs/bbs
虛擬主機定義
注意 :需要先登出中心主機的server項
server {
listen 80;
server_name
access_log /var/log/nginx/a.access.log ;
index index.html;
root /var/www/a;
}
server {
listen 80;
server_name
access_log /var/log/nginx/b.access.log ;
index index.html;
root /var/www/b;
}
#以域名作為區分
定義預設虛擬主機
A Default Catchall Virtual Host
server {
listen 80 default;
server_name _;
access_log /var/log/nginx/default.access.log ;
server_name_in_redirect off;
index index.html;
root /var/www/default;
}
#定義在http服務中
#在使用ip登陸時,預設開啟的網頁
簡單的負載均衡(反向代理)
http {
upstream myproject {
server 127.0.0.1:8000 weight=3;
server 127.0.0.1:8001;
}#轉發和權重
server {
listen 80;
server_name
location / {
proxy_pass
}#轉發到這些定義到
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30129545/viewspace-1435063/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Nginx 基礎入門Nginx
- 圖論入門基礎圖論
- 小白入門使用Nginx基礎的常用操作Nginx
- Nginx入門到實戰(1)基礎篇Nginx
- Nginx入門級安裝和基礎使用Nginx
- 爬蟲(1) - 爬蟲基礎入門理論篇爬蟲
- RabbitMQ基礎入門MQ
- mongodb基礎入門MongoDB
- MySQL 基礎入門MySql
- ZooKeeper 基礎入門
- Elasticsearch 基礎入門Elasticsearch
- Vim 入門:基礎
- Bootstrap基礎入門boot
- Html基礎入門HTML
- ElasticSearch基礎入門Elasticsearch
- HTML 基礎入門HTML
- Dart 基礎入門Dart
- SQL入門基礎SQL
- Kafka基礎入門Kafka
- Redis入門基礎Redis
- Java 入門基礎Java
- Maven入門基礎Maven
- JavaScript入門基礎JavaScript
- SQL基礎入門SQL
- Zookeeper基礎入門
- goalng 基礎入門Go
- TypeScript 基礎入門TypeScript
- Mongoose基礎入門Go
- systemtap基礎入門
- sqlServer 基礎入門SQLServer
- shell入門基礎
- go基礎入門Go
- 【FastAPI】入門基礎ASTAPI
- Android App 優化之提升你的 App 啟動速度之理論基礎AndroidAPP優化
- vue 基礎入門筆記 14:發表評論 demoVue筆記
- 0.開個新坑,湍流基礎理論入門
- 前端基礎入門四(JavaScript基礎)前端JavaScript
- 寫給後端的Nginx初級入門教程:基礎篇後端Nginx