nginx源碼編譯安裝及配置文件說明
阿新 • • 發佈:2018-05-16
nginx源碼安裝nginx源碼編譯安裝
安裝nginx的依賴包(pcre-devel openssl-devel)
[root@anuo ~]# yum install pcre-devel openssl-devel -y
創建管理用戶 nginx
[root@anuo ~]# useradd -s /sbin/nologin -M nginx
下載nginx源碼包
[root@anuo opt]# wget http://nginx.org/download/nginx-1.10.2.tar.gz
解壓軟件
tar xf nginx-1.10.2.tar.gz [root@anuo opt]# tar xf nginx-1.10.2.tar.gz -C /usr/src/ [root@anuo opt]# cd /usr/src/nginx-1.10.2/
nginx軟件編譯安裝過程
配置軟件,在軟件的解壓目錄中
[root@anuo nginx-1.10.2]# ./configure --prefix=/usr/local/nginx-1.10.2 --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module
編譯參數說明:
–prefix --表示指定軟件安裝到哪個目錄中,指定目錄不存在會自動創建 –user/–group --nginx工作進程由哪個用戶運行管理 –with-http_stub_status_module --啟動nginx狀態模塊功能(用戶訪問nginx的網絡信息) –with-http_ssl_module --啟動https功能模塊
確認配置是否正確
[root@anuo nginx-1.10.2]# echo $?
0
編譯軟件
[root@anuo nginx-1.10.2]# make
編譯安裝
[root@anuo nginx-1.10.2]# make install
創建軟連接
[root@anuo nginx-1.10.2]# cd /usr/local/
[root@anuo local]# ln -s /usr/local/nginx-1.10.2/ /usr/local/nginx
啟動程序
[root@anuo local]# /usr/local/nginx/sbin/nginx
檢查是否啟動
[root@anuo local]# ps -ef | grep nginx root 8741 1 0 08:31 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx nginx 8742 8741 0 08:31 ? 00:00:00 nginx: worker process root 8744 1802 0 08:31 pts/0 00:00:00 grep nginx
檢查端口信息
[root@anuo local]# lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 8741 root 6u IPv4 19348 0t0 TCP *:http (LISTEN)
nginx 8742 nginx 6u IPv4 19348 0t0 TCP *:http (LISTEN)
服務安裝完成了
nginx命令簡化方法
[root@anuo local]# echo ‘export PATH=/usr/local/nginx/sbin:$PATH‘>>/etc/profile
[root@anuo local]# source /etc/profile
[root@anuo local]# echo $PATH
/usr/local/nginx/sbin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
nginx 目錄結構
[root@anuo nginx]# ll
總用量 36
drwx------ 2 nginx root 4096 5月 14 08:31 client_body_temp
drwxr-xr-x 2 root root 4096 5月 14 08:26 conf #配置文件保存目錄
drwx------ 2 nginx root 4096 5月 14 08:31 fastcgi_temp
drwxr-xr-x 2 root root 4096 5月 14 08:26 html #站點目錄
drwxr-xr-x 2 root root 4096 5月 14 08:31 logs #nginx 服務相關日誌文件保存目錄(錯誤日誌訪問日誌)
drwx------ 2 nginx root 4096 5月 14 08:31 proxy_temp
drwxr-xr-x 2 root root 4096 5月 14 08:26 sbin # 服務命令目錄(只有一個nginx文件)
drwx------ 2 nginx root 4096 5月 14 08:31 scgi_temp
drwx------ 2 nginx root 4096 5月 14 08:31 uwsgi_temp
nginx.conf 配置文件說明
將配置文件的註釋和空行去掉方便查看
[root@anuo conf]# egrep -v "#|^$" nginx.conf.default > nginx.conf
[root@anuo conf]# cat nginx.conf
worker_processes 1; ← worker 進程數量
events { ←事件區塊
worker_connections 1024; ←每個worker進程可以處理的連接數
}
http { ← HTTP 區塊
include mime.types; ←支持的媒體文件
default_type application/octet-stream; ←默認的媒體類型
sendfile on; ←高效傳輸模式
keepalive_timeout 65; ←超時時間
server { ← server 區塊
listen 80; ←監聽的端口
server_name localhost; ←域名
location / { ←location區塊
root html; ←站點目錄
index index.html index.htm; ←首頁文件
}
error_page 500 502 503 504 /50x.html; ← 錯誤信息配置
location = /50x.html {
root html;
}
}
}
nginx使用命令參數
[root@anuo conf]# nginx --啟動服務
[root@anuo conf]# nginx -s stop --關閉服務
[root@anuo conf]# nginx -t --修改了配置文件檢查下語法
[root@anuo conf]# nginx -s reload --重新加載
[root@anuo conf]# nginx -V --查看編譯參數信息
nginx version: nginx/1.10.2
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx-1.10.2 --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module
nginx源碼編譯安裝及配置文件說明