比Apache效能還要好的Nginx安裝步驟

比Apache效能還要好的Nginx安裝步驟

Nginx是近期蠻受歡迎的高效能Web伺服器(大家都說比Apache好,要用於在Unix的系統,若在windows系統,有人說效能差不多)

在這裡記錄我如何安裝NginxWindows中。

系統環境介紹

windows server 2008R2
nginx/Windows-1.10.1

安裝步驟

E:\>cd nginx-1.10.1

E:\nginx-1.10.1>start nginx.exe

E:\nginx-1.10.1>tasklist /fi "imagename eq nginx.exe"

映像名稱                       PID 工作階段名稱      工作階段 #    RAM使用量
========================= ======== ================ =========== ============
nginx.exe                     2320 RDP-Tcp#0                  1      5,492 K
nginx.exe                     2292 RDP-Tcp#0                  1      5,792 K

 

使用瀏覽器開啟http://localhost (外部連線需設定防火牆允許80 port)

比Apache效能還要好的Nginx安裝步驟

關於httpd.conf設定

Nginx的配置是使用conf/nginx.conf,相同於apache的httpd.conf

user  www www; 定義Nginx運行的用戶和用戶組

worker_processes 4; nginx進程數,建議設置為等於CPU總核心數

worker_connections  2048; 每一個worker進程能並發處理的最大連接數

charset utf-8; 網站編碼

client_max_body_size 10m; 允許客戶端請求的最大單文件字節數

gzip  on;

1
開啟gzip壓縮輸出

 

 

相關CMD指令

nginx -s stop     快速停止
nginx -s quit     正常停止
nginx -s reload     更改配置,一個新的配置開始新的工作進程,舊的工作進程正常關閉
nginx -s reopen    重新打開日誌文件

 

新增站台

編輯nginx.conf,複製server{...}這段程式碼,再做修改

server {
listen       80;
server_name  xxx.yourname.com; (你的網址)
location / {
root   www/xxx; (網站目錄位置)
index  index.html index.htm index.php;

......以下我先省略

 

完整的nginx.conf設定參考

user  www www;
worker_processes  4;
error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
pid        logs/nginx.pid;
events {
use epoll;
worker_connections  2048;
}
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  65;
# gzip壓縮功能設置
gzip on;
gzip_min_length 1k;
gzip_buffers    4 16k;
gzip_http_version 1.0;
gzip_comp_level 6;
gzip_types text/html text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml;
gzip_vary on;

比Apache效能還要好的Nginx安裝步驟
比Apache效能還要好的Nginx安裝步驟

# http_proxy 設置
client_max_body_size   10m;
client_body_buffer_size   128k;
proxy_connect_timeout   75;
proxy_send_timeout   75;
proxy_read_timeout   75;
proxy_buffer_size   4k;
proxy_buffers   4 32k;
proxy_busy_buffers_size   64k;
proxy_temp_file_write_size  64k;
proxy_temp_path   /usr/local/nginx/proxy_temp 1 2;
# 設定負載均衡後台服務器列表
upstream  backend  {
#ip_hash;
server   192.168.10.100:8080 max_fails=2 fail_timeout=30s ;
server   192.168.10.101:8080 max_fails=2 fail_timeout=30s ;
}
# 很重要的虛擬主機配置
server {
listen       80;
server_name  www.example.com;
root   /apps/hahaha;
charset utf-8;
access_log  logs/host.access.log  main;
#對 / 所有做負載均衡+反向代理
location / {
root   /apps/hahaha;
index  index.jsp index.html index.htm;
proxy_pass        http://backend;
proxy_redirect off;
# 後端的Web服務器可以通過X-Forwarded-For獲取用戶真實IP
proxy_set_header  Host  $host;
proxy_set_header  X-Real-IP  $remote_addr;
proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;

}
#靜態文件,nginx自己處理,不去backend請求tomcat
location  ~* /download/ {
root /apps/oa/fs;

}
location ~ .*\.(gif|jpg|jpeg|bmp|png|ico|txt|js|css)$
{
root /apps/hahaha;
expires      7d;
}
location /nginx_status {
stub_status on;
access_log off;
allow 192.168.10.0/24;
deny all;
}
location ~ ^/(WEB-INF)/ {
deny all;
}
#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;
}
}
## 其它虛擬主機,server 指令開始
}

 

參考:

Apache與Nginx的比較

nginx for Windows

Beginner’s Guide

https://blog.toright.com/posts/3890/無堅不摧,唯快不破!快改用-nginx-php-fpm-取代-apache-吧!.html

http://jazz-info.blogspot.tw/2014/02/nginx-windowsnginx.html

http://nginx.org/en/download.html

http://seanlook.com/2015/05/17/nginx-install-and-config/

關於作者 多力哥
比Apache效能還要好的Nginx安裝步驟
影像創作攝影師/網頁動畫設計師/系統網路工程師/水草研究生
景文科大畢業後,我成為一名網站動畫設計師,並副修MIS電腦資訊管理。2004年,我開始接觸單眼相機,並在2008年正式成為一名接案攝影師,目前使用Canon系統進行拍攝。2016年,我愛上了美麗的水草缸,這讓我的生活多了另一層次的放鬆。每天在電腦前修圖時,能欣賞紅吱吱、綠油油的水草,彷彿多了一份平靜與愉悅。攝影與水草讓我的生活充滿了藝術與自然的交融。
連絡信箱:hello@hahasmile.com (歡迎合作提案)
DORIGO IMAGE 攝影工作室:https://dorigo-image.com
如果你喜歡我的內容,可以用行動贊助我一杯咖啡☕,支持我持續創作,也讓這個網站可以繼續營運下去喔!

若您喜歡這篇文章,歡迎按讚分享喔!
0 回復

發表評論

想要留言嗎?
歡迎歡迎!

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *