注意:如果使用root使用者安裝和啟動nginx,請把nginx配置檔案第一行的修改為本文重點針對異常環境(user nobody
意思是讓nginx 以nobody
使用者執行,nobody是linux乙個不能登入的預設使用者,這樣可以避免一定的安全問題。
非root使用者並且不能聯網的伺服器
)的安裝方法進行說明。
gcc 編譯環境
相關檔案包
在 gcc 伺服器上編譯
首先確定你目標伺服器的非root使用者名稱
,本文的非root使用者名稱以shanhy
為例,具體的名字隨意。
1、建立使用者並設定密碼
使用root使用者建立使用者並設定密碼,如果你已經被分配好乙個使用者,則跳過該步
useradd shanhy
passwd shanhy
2、安裝gcc編譯環境
使用root使用者安裝gcc
yum install -y gcc-c++
3、切換到非root使用者進行編譯和後續操作
切換使用者
su - nginx
解壓壓縮包
tar -xzvf nginx-1.18.0.tar.gz
tar -xzvf openssl-1.0.2s.tar.gz
tar -xzvf pcre-8.44.tar.gz
tar -xzvf zlib-1.2.11.tar.gz
配置
--with-http_stub_status_module
其中編譯--prefix
設定你 nginx 最終需要安裝到的目錄,這個目錄一定要和你最後需要拷貝到的目標伺服器上計畫放置的目錄一致,因為編譯後這種配置是預設打入二進位制檔案中的不便修改。--user
和--group
使用你的非root使用者名稱和其所在的使用者組名稱,下面是檢視使用者所在使用者組的方法(示例):[shanhy@cib-server1 sbin]$ cat /etc/passwd | grep shanhy
shanhy:x:1002:1003::/home/shanhy:/bin/bash
[shanhy@cib-server1 sbin]$ cat /etc/group | grep 1003
shanhy:x:1003:
make && make install
安裝
make install
安裝後--prefix
指定的目錄中會出現包括但不限於conf|html|sbin|logs
幾個目錄。
非root使用者執行nginx不能監聽1024以下的埠號,因為我們的nginx需要使用 80和443 埠,所以需要使用root使用者授權。當然如果你nginx使用大端**可以跳過這步。
su - root
cd /home/shanhy/nginx/sbin
chown root:root nginx
chmod 755 nginx
chmod u+s nginx
使用非root使用者,進入目錄並啟動服務
su - shanhy
cd /home/shanhy/nginx
./sbin/nginx
開啟瀏覽器訪問http://
正常應該可以看到 nginx 的預設頁。
常用管理命令:至此,服務安裝結束。檢視版本:
nginx –v
停止服務:
nginx -s stop
或者是通過 kill nginx 程序號測試配置:
nginx -t
重新整理配置:
nginx -s reload
nginx 的預設的主配置檔案為conf/nginx.conf
,我們一般建立乙個conf.d
資料夾這樣的方式來區分主配置檔案和子配置檔案,conf.d
中存放多個子配置檔案:
使用如下配置檔案替換預設配置檔案:
#user nobody;
worker_processes 1;
error_log logs/error.log warn;
pid logs/nginx.pid;
events
http
注意:如果你的nginx使用的是root使用者安裝和啟動的,配置檔案的第一行然後建立目錄user nobody
請去掉前面的#
注釋,這個在上文中已做說明。
conf/conf.d
,將如下檔案default.conf
放入其中
server
#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
}
配置檔案如果有變動修改,修改後先使用(end)sbin/nginx -t
測試語法然後再sbin/nginx -s reload
重新整理配置即可。
Nginx離線安裝
nginx版本為1.16.0,作業系統為centos 7.4 x64。nginx官方 說明 安裝依賴包 大概需要安裝這些依賴包 rpm ivh libmpc 1.0.1 3.el7.x86 64.rpm rpm ivh cpp 4.8.5 16.el7.x86 64.rpm rpm ivh kern...
nginx離線安裝
因為工作網路的特殊性,伺服器是不連網際網路的,所以整個安裝過程都是採用離線包安裝的方式來安裝。nginx安裝 一般我們都需要先裝pcre,zlib,前者用於url rewrite,後者用於gzip壓縮,openssl用於後續可能公升級到https時使用。正式開始前需要確認gcc g 開發庫已經預先安...
nginx離線安裝
openssl安裝 root localhost src tar zxvf openssl fips 2.0.16.tar.gz 省略安裝內容 root localhost src cd openssl fips 2.0.16 root localhost openssl fips 2.0.16 c...