nginx(發(fā)音同engine x)是一款由俄羅斯程序員Igor Sysoev所開發(fā)輕量級(jí)的網(wǎng)頁服務(wù)器、反向代理服務(wù)器以及電子郵件(IMAP/POP3)代理服務(wù)器。起初是供俄國大型的門戶網(wǎng)站及搜索引擎Rambler(俄語:Рамблер)使用。此軟件BSD-like協(xié)議下發(fā)行,可以在UNIX、GNU/Linux、BSD、Mac OS X、Solaris,以及Microsoft Windows等操作系統(tǒng)中運(yùn)行。 nginx不單可以作為強(qiáng)大的web服務(wù)器,也可以作為一個(gè)反向代理服務(wù)器,而且nginx還可以按照調(diào)度規(guī)則實(shí)現(xiàn)動(dòng)態(tài)、靜態(tài)頁面的分離,可以按照輪詢、ip哈希、URL哈希、權(quán)重等多種方式對(duì)后端服務(wù)器做負(fù)載均衡,同時(shí)還支持后端服務(wù)器的健康檢查。 更新日志:Nginx 1.7.7 發(fā)布了,下載地址: 改進(jìn)記錄包括: *) Change: now nginx takes into account the "Vary" header line in a backend response while caching. *) Feature: the "proxy_force_ranges", "fastcgi_force_ranges", "scgi_force_ranges", and "uwsgi_force_ranges" directives. *) Feature: the "proxy_limit_rate", "fastcgi_limit_rate", "scgi_limit_rate", and "uwsgi_limit_rate" directives. *) Feature: the "Vary" parameter of the "proxy_ignore_headers", "fastcgi_ignore_headers", "scgi_ignore_headers", and "uwsgi_ignore_headers" directives. *) Bugfix: the last part of a response received from a backend with unbufferred proxy might not be sent to a client if "gzip" or "gunzip" directives were used. *) Bugfix: in the "proxy_cache_revalidate" directive. Thanks to Piotr Sikora. *) Bugfix: in error handling. Thanks to Yichun Zhang and Daniil Bondarev. *) Bugfix: in the "proxy_next_upstream_tries" and "proxy_next_upstream_timeout" directives. Thanks to Feng Gu. *) Bugfix: nginx/Windows could not be built with MinGW-w64 gcc. Thanks to Kouhei Sutou. web服務(wù)器Nginx發(fā)布1.6.2。2014-09-16。上個(gè)版本2014-08-05的1.6.1 遺留穩(wěn)定版1.4.7/1.2.9/1.0.15.開發(fā)版1.7.5 修正了一個(gè)SSL相關(guān)的安全漏洞(CVE-2014-3616),以及兩個(gè)DNS可能導(dǎo)致請(qǐng)求掛起B(yǎng)ug(1.5.8引入)。 nginx開發(fā)團(tuán)隊(duì)還同步發(fā)布了nginx 1.7.0主線版本,新特性如下: 后端SSL證書驗(yàn)證 當(dāng)使用SSL后端時(shí),支持SNI(服務(wù)器名稱標(biāo)識(shí)符) Nginx頂級(jí)網(wǎng)站用量超越Apache位居第一據(jù)W3Techs統(tǒng)計(jì)數(shù)據(jù)顯示,全球Alexa排名前100萬的網(wǎng)站中的23.3%都在使用nginx,在排名前10萬的網(wǎng)站中,這一數(shù)據(jù)為30.7%,而在前1000名的網(wǎng)站中,nginx的使用量超過了Apache,位居第1位。 Nginx負(fù)載均衡一些基礎(chǔ)知識(shí):nginx 的 upstream目前支持 4 種方式的分配 按訪問的url的hash結(jié)果分配,使每個(gè)url定向到同一個(gè)后端服務(wù)器,后端為緩存服務(wù)器比較有效。 配置:在http節(jié)點(diǎn)里添加: #定義負(fù)載均衡設(shè)備的 Ip及設(shè)備狀態(tài) upstream myServer { server 127.0.0.1:9090 down; 在需要使用負(fù)載的Server節(jié)點(diǎn)下添加 proxy_pass http://myServer; upstream 每個(gè)設(shè)備的狀態(tài): down 表示單前的server暫時(shí)不參與負(fù)載 Nginx還支持多組的負(fù)載均衡,可以配置多個(gè)upstream 來服務(wù)于不同的Server. 配置負(fù)載均衡比較簡單,但是最關(guān)鍵的一個(gè)問題是怎么實(shí)現(xiàn)多臺(tái)服務(wù)器之間session的共享 windows和Linux下配置Nginx負(fù)載的寫法一樣,故不分開介紹. 啟動(dòng)綠色文件,無須安裝,直接即可啟動(dòng)。 據(jù)我所知,3種啟動(dòng)途徑,其實(shí)都類似: 一、雙擊nginx.exe圖標(biāo),可見黑窗口一閃而過,啟動(dòng)完畢。 二、命令行到nginx目錄,輸入nginx啟動(dòng)。(注,此方式命令行窗口無任何提示,且被鎖定) 三、命令行到nginx目錄,輸入start nginx啟動(dòng),此方式不鎖定 啟動(dòng)后,默認(rèn)情況下(無修改配置),可見到有兩個(gè)nginx的進(jìn)程,一個(gè)是master process,一個(gè)是worker processes。 測試默認(rèn)nginx部署了些靜態(tài)內(nèi)容,我們可通過它測試nginx是否在工作。 默認(rèn)的配置文件(NGINX_HOME/conf/nginx.conf)如下: #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} } 通過觀察配置文件的非注釋項(xiàng)(參考Nginx配置文件nginx.conf中文詳解),大概可知: 1、啟動(dòng)了1個(gè)worker processes 2、worker_connections,最大并發(fā)數(shù)為1024 3、include mime.types,引入mime.types文件所聲明的文件擴(kuò)展名與文件類型映射 4、application/octet-stream,默認(rèn)使用application/octet-stream 5、sendfile,開啟高效文件傳輸模式 6、監(jiān)聽本機(jī)“localhost”的80端口 7、映射目錄為“當(dāng)前目錄的html目錄” 8、出現(xiàn)500、502、503、504錯(cuò)誤,則映射到50x.html 瀏覽地址http://localhost,即可訪問其默認(rèn)頁面,即映射到NGINX_HOME/html/index.html 其他靜態(tài)內(nèi)容,如html、圖片,可自行添加測試。 日志日志默認(rèn)位于NGINX_HOME/logs/,可見: 1、access.log,訪問日志 2、error.log,異常日志 3、nginx.pid,進(jìn)程(僅在啟動(dòng)nginx后才有此日志) 常見的網(wǎng)絡(luò)操作系統(tǒng)有UNIX、Netware、Windows NT、Linux等,網(wǎng)絡(luò)軟件的漏洞及缺陷被利用,使網(wǎng)絡(luò)遭到入侵和破壞。 |
1深度技術(shù)win10正式版ghost(32位)旗艦......
2番茄花園win10 X86 ghost 標(biāo)準(zhǔn)通......
3番茄花園Win10_Ghost Win10 64......
4雨林木風(fēng) GHOST WIN10 X64 快速裝......
5深度技術(shù)GHOST WIN10 X64 尊貴專業(yè)......
6筆記本W(wǎng)in10系統(tǒng) 64位官方正式版2023年......
7筆記本win10正式版ghost(32位)旗艦免......
8雨林木風(fēng)win10(32位)ghost 修正專業(yè)......