項(xiàng)目地址:http://git.oschina.net/miki-long/nginx
前提:最近在研究nginx的用法,在windows上小試了一下,由于windows下不支持nginx緩存配置,所以本文主要是講nginx,以及反向代理與負(fù)載均衡。
【一、為什么要使用nginx】
要回答為什么要使用nginx,那就先說說nginx能做些什么。
首先,nginx能做反向代理,那么什么是反向代理呢,舉個(gè)栗子,我想在本地使用 www.mickey.com 的域名去訪問 www.taobao.com。那么這個(gè)時(shí)候我們就可以通過nginx去實(shí)現(xiàn)。
再者,nginx能實(shí)現(xiàn)負(fù)載均衡,什么是負(fù)載均衡呢?就是我的項(xiàng)目部署在不同的服務(wù)器上,但是通過統(tǒng)一的域名進(jìn)入,nginx則對請求進(jìn)行分發(fā),減輕了服務(wù)器的壓力。
在上面這兩種情況下,nginx服務(wù)器的作用都只是作為分發(fā)服務(wù)器,真正的內(nèi)容,我們可以放在其他的服務(wù)器上,這樣來,還能起到一層安全隔壁的作用,nginx作為隔離層。
其次,nginx還能解決跨域的問題。
【二、、nginx安裝】
在 http://nginx.org/ 下載對應(yīng)版本的nginx
在 nginx 的目錄下使用 start nginx 或者 雙擊 nginx.exe 打開nginx
【三、nginx配置屬性說明】
#全局設(shè)置
-1/var/log/nginx//var/run/nginx.pid;/O Multiplexing)中的一種方式,但是僅用于linux2.6以上內(nèi)核,可以大大提高nginx的性能 worker_connections 1024/etc/nginx/mime.types; default_type application/octet-stream;/var/log/nginx//O處理速度,降低系統(tǒng)的uptime.65"MSIE [1-6]\.(?!.*SV1)"4/etc/nginx/conf.d/*/etc/nginx/sites-enabled/*192.168.8.1:3128 weight=5192.168.8.2:80 weight=1192.168.8.3:80 weight=680/www.xx.com.access.log main;//root; #定義服務(wù)器的默認(rèn)網(wǎng)站根目錄位置/$fastcgi_script_name; include /etc/nginx/fastcgi_params;500 502 503 504 /50x.html; location = /50x.html { root /root;~ ^/(images|javascript|js|css|flash|media|static)//var/www/virtual/~/root; fastcgi_pass 127.0.0.1:9000/home/www/www$fastcgi_script_name;/NginxStatus {"NginxStatus"/htpasswd;~ /\.ht {168.880192.168.8~ .*/root;#定義服務(wù)器的默認(rèn)網(wǎng)站根目錄位置-Forwarded--Real--Forwarded-9090904*2
【四、nginx反向代理】
本地起兩個(gè)項(xiàng)目,源碼在此。
分別在這兩個(gè)文件夾下面運(yùn)行
npm install node server.js
在瀏覽器輸入
本機(jī)ip:4789
本機(jī)ip:5789
可以訪問到這兩個(gè)頁面
接著我們想使用
test.nginx.com訪問到 頁面5789
test.nginx.com/bug 訪問到頁面5789
則我們首先需要配置hosts
win 下hosts 的地址為 C:\Windows\System32\drivers\etc
我們需要在hosts文件里面添加如下配置
172.18.144.23 test.nginx.com
然后在 nginx 的 http 模塊上添加一個(gè) server
server { listen 80; server_name test.nginx.com; location / { proxy_pass http://172.18.144.23:4789/; } location /buy { proxy_pass http://172.18.144.23:5789/; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
然后重啟nginx
在瀏覽器輸入 test.nginx.com
在瀏覽器輸入 test.nginx.com/bug
反向代理就這樣子啦。
【五、nginx負(fù)載均衡】
在nginx中配置http
首先配置負(fù)載均衡的服務(wù)
在http模塊中添加如下配置
upstream webservers { server 172.18.144.23:4789 weight=10; server 172.18.144.23:5789 weight=10; }
把server改為
server { listen 80; server_name test.nginx.com; location / { proxy_pass http://webservers; } location /buy { proxy_pass http://172.18.144.23:5789/; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
在瀏覽器輸入 test.nginx.com,刷新,我們可以看到兩種頁面,說明nginx已經(jīng)把我們的請求分發(fā)到不同的地方去了。
轉(zhuǎn)載請注明出處喲 http://www.cnblogs.com/Miss-mickey/p/6734831.html
http://www.cnblogs.com/Miss-mickey/p/6734831.html