安裝原始碼nginx 搭建**伺服器
rpm -q gcc gcc-c
++ make
yum -y groupinstall "開發工具"
檢查80埠使用情況:
新增nginx使用者,不需要家目錄和使用者組:
useradd -s /sbin/noligin -m nginx
yum -y openssl-devel(需要openssl支援)
yum -y install pcre-devel(需要pcre支援)
安裝過程:
unzip
nginx
-package
.zip
cdnginx
-package
tar-
zxvf
nginx-0
.8.55
.tar.gz
cdnginx-0
.8.55
./configure--
help#檢視安裝引數
./configure--
prefix=/usr/local/nginx(安裝位置)--
(開啟ssl服務,許安裝openssl
(預設支援位址重寫,可不寫
,用於修改客戶端訪問自己的url路徑,http://ip/目錄名/檔案,用perl
+正規表示式匹配使用者訪問自己的url路徑)
make
make
install
成功安裝後生成的檔案目錄:
[root@pc205 nginx]# cd /usr/local/nginx/
conf 配置檔案 nginx.conf nginx.conf.default
html 網頁目錄
logs 日誌目錄 (訪問日誌 錯誤日誌 ***.pid)
access.log error.log nginx.pid
sbin 啟動服務 命令存放的目錄
啟動nginx:
[root@pc205 nginx]# /usr/local/nginx/sbin/nginx
檢視啟動情況:
welcome to nginx!./nginx 選項:
-s stop 關閉服務
-t 檢查預設配置檔案 nginx.conf 是否有語法錯誤
-v 檢視軟體版本
-v 檢視安裝時的配置資訊 ./configrue
-c ***.conf 啟動nginx時,指定載入的的配置檔案,要指定檔案的絕對路徑,預設載入 nginx.conf
以nginx-2.conf配置檔案啟動nginx:
[root@pc205 conf]# ../sbin/nginx -c /usr/local/nginx/conf/nginx-2.conf
通過殺程序或給程序傳送訊號的方式停止服務
pkill -9 nginx
kill -訊號 pid號
訊號 :
term, int 快速關閉 ,不理會有沒有正在進行的服務,強制關閉
kill -int `cat /usr/local/nginx/logs/nginx.pid`
quit 從容關閉(不接受新服務,等待已連線服務結束後關閉),從容關 閉主程序順便強制關閉工作子程序
winch 從容關閉工作主程序,不會立即關閉子程序
hup 過載配置,用新的配置開始新的工作程序;從容關閉舊的工作程序,相當於重啟操作
kill -hup `cat /usr/local/nginx/logs/nginx.pid`
usr1 重新開啟日誌檔案 ,公升級軟體版本時使用
usr2 平滑公升級可執行程式,公升級軟體版本時使用
配置nginx (vim nginx.conf):
worker_processes 1;#nginx啟動時,開啟的程序數,一般設定的數量與cpu核心數相同
events
#http容器{}作用域外是全域性配置
}}
精簡配置檔案**,刪除空行和注釋行:
grep -v '^$' nginx.conf.default | grep -v '#' > nginx-3.conf
檢視nginx啟動情況:
ps aux |grep –color nginx
平滑公升級nginx (nginx獨有的功能,公升級服務軟體版本時不用停止服務,公升級軟體跨度不能太大)
執行./configure 時,配置引數要和低版本一致 ,用 ./nginx -v檢視低版本安裝時的引數。
make#編譯後objs目錄下會生成nginx資料夾,這是高版本nginx啟動命令
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx-old#備份舊版本nginx命令
cp objs/nginx /usr/local/nginx/sbin/#使用新版本的nginx命令取代舊版本nginx命令
make upgrade#公升級版本,實際執行命令如下所示:
/usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
kill -usr2 `cat /usr/local/nginx/logs/nginx.pid`
sleep 1
test -f /usr/local/nginx/logs/nginx.pid.oldbin
kill -quit `cat /usr/local/nginx/logs/nginx.pid.oldbin`
nginx漏洞分析與公升級修復
nginx announce nginx安全公告 cve 2018 16843,cve 2018 16844 在nginx http 2實現中發現了兩個安全問題,漏洞對伺服器的影響 可能會導致過多的記憶體消耗 cve 2018 16843 和cpu使用率 cve 2018 16844 影響範圍 這些...
nginx的安裝公升級 常用配置(二)
訪問web頁面需要進行使用者認證 使用者名為 tom,密碼為 123456。模板配置檔案框架如下 usr local nginx conf nginx.conf 全域性配置 使用者名稱,日誌,程序 1 修改 usr local nginx conf nginx.conf root proxy vim...
nginx 負載均衡安裝及公升級步驟
先在1.1.1.1伺服器上為例安裝nginx 使用非root使用者安裝,比如 guest 安裝目錄暫時設定為 home guest nginxserver 使用guest使用者登入 cd home guest mkdir p nginxserver tar mkdir p nginxserver t...