確認yum可用,確認防火墻,確認SELinux
一項安裝
yum -y install gcc make automake pcre-devel zlib zlib-devel openssl openssl-devel
參數:
gcc:編譯依賴gcc環境
pcre:PCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 Perl 兼容的正則表達式庫。
zlib:zlib庫提供了很多種壓縮和解壓縮的方式,Nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。
Openssl:OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協議,并提供豐富的應用程序供測試或其它目的使用。
解壓文件
tar -zxvf Nginx-1.20.1.tar.gz
cd Nginx-1.20.1
其中各個目錄中存放的文件作用為:
auto:存放 Nginx 自動安裝的相關文件
conf:存放 Nginx 服務器配置文件
configure:命令,用于對即將安裝的軟件的配置,完成 makefile 編譯文件的生成
contrib:存放由其他機構貢獻的文檔材料
html:存放 Nginx 歡迎頁面
man:manual,手冊,存放 Nginx 幫助文檔
src:存放 Nginx 源碼
configure 參數:
–prefix:Nginx 安裝目錄。注意,安裝目錄與解壓目錄不一樣
–sbin-path:Nginx 命令文件
–modules-path:Nginx 模塊存放路徑
–conf-prefix:Nginx 配置文件存放路徑
–pid-path:Nginx 的進程 id 文件
–error-log-path:錯誤日志文件
–http-log-path:http訪問日志文件
安裝編譯參數
編譯選項 作用
–prefix=/etc/Nginx 主目錄
–sbin-path=/usr/sbin/Nginx 執行命令
–modules-path=/usr/lib64/Nginx/modules Nginx模塊
–conf-path=/etc/Nginx/Nginx.conf Nginx配置文件
–error-log-path=/var/log/Nginx/error.log 錯誤日志
–http-log-path=/var/log/Nginx/access.log 訪問日志
–pid-path=/var/run/Nginx.pid Nginx啟動的pid
–lock-path=/var/run/Nginx.lock Nginx的鎖
–http-client-body-temp-path=/var/cache/Nginx/client_temp 執行對應模塊時,Nginx鎖保留的臨時性文件
–http-proxy-temp-path=/var/cache/Nginx/proxy_temp
–http-fastcgi-temp-path=/var/cache/Nginx/fastcgi_temp
–http-uwsgi-temp-path=/var/cache/Nginx/uwsgi_temp
–http-scgi-temp-path=/var/cache/Nginx/scgi_temp
–user=Nginx 設定Nginx進程啟動的用戶
–group=Nginx 設定Nginx進程啟動的用戶組
–with-cc-opt=parameters 設置額外的參數將被添加到CFLAGS變量
–with-ld-opt=parameters 設置附加的參數,連接系統庫
[root@node1 Nginx-1.20.1]# mkdir -p /var/temp/nginx/client
[root@node1 Nginx-1.20.1]# pwd
/opt/apps/nginx-1.20.1
[root@node1 Nginx-1.20.1]# ./configure \
--prefix=/usr/local/nginx \
--pid-path=/usr/local/nginx/logs/nginx.pid \
--error-log-path=/usr/local/nginx/logs/error.log \
--http-log-path=/usr/local/nginx/logs/access.log \
--with-http_ssl_module \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi
編譯安裝
make
make install
Nginx服務啟停控制
在Linux 平臺下,啟動Nginx服務器直接運行安裝目錄下sbin目錄中的二進制文件即可。
./nginx -h
參數:
-v : 打印版本號
-V : 打印版本號和配置
-t:測試配置正確性并退出
-q:測試配置時只顯示錯誤
-s:向主進程發送信號
-p:指定Nginx服務器路徑前綴
-c: 指定Nginx配置文件路徑
-g: 指定Nginx附加配置文件路徑
Nginx服務的停止
兩種方式:
快速停止,快速停止是指立即停止當前Nginx服務正在處理的所有網絡請求,馬上丟棄連接,停止工作。
./nginx -s stop # 快速關閉
平緩停止,平緩停止是指允許Nginx服務將當前正在處理的網絡請求處理完成,但不再接收新的請求,之后關閉連接,停止工作。
./nginx -s quit # 等待工作進程處理完成后關閉
注意:
建議使用平緩停止。
Nginx服務的重啟
更改Nginx服務器的配置和加入新模塊后,如果希望當前的Nginx服務應用新的配置或使新模塊生效,就需要重啟Nginx服務。當然我們可以先關閉Nginx服務,然后使用新的Nginx配置文件重啟服務。
./nginx -s reload # 向主進程發送信號,重新加載配置文件,熱重啟
./nginx -s reopen # 重啟 Nginx