nginx編譯安裝
一、Nginx是什麼?
Nginx是web服務軟體。
Nginx是一個開源且高效能、可靠的http web服務、代理服務的軟體
1、開源
2、Nginx web伺服器
3、Nginx是俄羅斯一個程式設計師
4、Nginx還是代理
二、Nginx和Apache之間對比
網路模型:
select 效能最低
poll 效能稍好
epoll 效能最強
Apache : select
Nginx : epoll
三、安裝Nginx
wget http://nginx.org/download/nginx-1.20.1.tar.gz tar -xf nginx-1.20.1.tar.gz cd nginx-1.20.1 ./configure --with-http_ssl_module --with-http_v2_module --with-stream --prefix=/usr/local/nginx make && make install
echo "export PATH=$PATH:/usr/local/nginx/sbin" >> /etc/profile #設定環境變數
source /etc/profile
root@web03 sbin]# vi /usr/lib/systemd/system/nginx.service #加入system管理
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl start nginx
四、nginx常用命令
nginx -v : 展示nginx的版本號
nginx -V :展示nginx版本號和配置引數
nginx -t : 測試配置檔案
nginx -T : 測試配置檔案並列印
nginx -q : 靜默輸出錯誤資訊
nginx -s : 向nginx傳送訊號
nginx -p : 指定執行的家目錄
nginx -e : 設定錯誤日誌的路徑
nginx -c : 設定配置檔案
nginx -g : 臨時設定配置項
五、nginx配置檔案詳解
# 工作程序啟動使用者 user nginx; # 啟動的worker程序數 worker_processes auto; # 指定錯誤日誌的路徑 error_log /var/log/nginx/error.log notice; # 指定nginx程序的PID pid /var/run/nginx.pid; # 配置事件 events { # worker程序中最大的連線數 worker_connections 1024; } # http配置模組 http { # include 是講其他檔案匯入進來 include /etc/nginx/mime.types; # default_type 指定nginx處理檔案的預設型別 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 /var/log/nginx/access.log main; # 高效讀取檔案 sendfile on; #tcp_nopush on; # 長連線的超時時間 keepalive_timeout 65; # 設定GZIP壓縮 #gzip on; # 載入其他的配置檔案 include /etc/nginx/conf.d/*.conf; } game.conf # 每一個server都代表一個網站(nginx是支援多個網站) server { # 指定當前網站的域名 server_name www.baidu.com; # 指定當前網站的埠 listen 80; # 指定一個訪問路徑 location / { # 指定站點目錄 root /opt/html; # 指定預設訪問的檔案 index index.html; } }
nginx和Apache效能對比
https://www.cnblogs.com/RRecal/p/15467229.html