編譯安裝Nginx1 15

2021-10-09 12:21:01 字數 3959 閱讀 9245

實驗安裝環境:centos7.6 nginx1.15 關閉防火牆、核心防護、已配好yum本地源

[root@host ~]

# yum -y install \

> gcc \

> gcc-c++ \

> make \

> pcre-devel \

> expat-devel \

> perl \

> zlib-devel

[root@host ~]

# useradd -m -s /sbin/nologin nginx

建立乙個名為nginx的程式使用者,-m不讓它建立家目錄,-s指定shell環境/sbin/nologin不允許登入shell環境

把安裝包放到/opt目錄下解壓

[root@host ~]

# cd /opt

[root@host opt]

# tar xzvf nginx-1.15.9.tar.gz

進入nginx檔案裡,配置引數,編譯,安裝

為了使 nginx 伺服器的執行更加方便, 可以為主程式 nginx 建立鏈結檔案, 以便管理員

直接執行 「nginx」 命令就可以呼叫nginx的主程式

[root@host nginx-1.15.9]

# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

把命令放到/usr/local/sbin下面,這個目錄是$path下的變數

[root@host nginx-1.15.9]

# ls -l /usr/local/sbin/nginx

lrwxrwxrwx 1 root root 27 sep 16 15:31 /usr/local/sbin/nginx -> /usr/local/nginx/sbin/nginx

首先檢查配置檔案是否正確,只有出現is ok 和 successful,配置檔案才正確

[root@host nginx-1.15.9]

# 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

直接執行nginx即可啟動nginx伺服器,這種方式將使用預設的配置檔案

[root@host nginx-1.15.9]

# nginx

[root@host nginx-1.15.9]

# yum -y install lynx

[root@host nginx-1.15.9]

# lynx 127.0.0.1

本地測試出現測試頁,nginx服務開啟成功

主程式nginx支援標準的程序訊號,通過kill或killall命令傳送hup訊號表示過載配置,

quit訊號表示退出程序, kill訊號表示殺死程序。例如,若使用killall 命令,過載配置、

停止服務的操作分別如下所示(通過"-s"選項指定訊號種類)

為了使nginx服務的啟動、停止、過載等操作更加方便,可以編寫基於centos 7.6的

nginx服務控制檔案使用systemctl工具來進行管理.

新增系統服務,到/lib/systemd/system/目錄下新增service檔案

[root@host nginx-1.15.9]

# vi /lib/systemd/system/nginx.service

[unit]

description=nginx

after=network.target

[service]

type=forking

pidfile=/usr/local/nginx/logs/nginx.pid

execstart=/usr/local/nginx/sbin/nginx

execreload=/usr/bin/

kill

-s hup $mainpid

execstop=/usr/bin/

kill

-s quit $mainpid

privatetmp=true

[install]

wantedby=multi-user.target

[root@host nginx-1.15.9]

# chmod 754 /lib/systemd/system/nginx.service //更改許可權

[root@host nginx-1.15.9]

# systemctl enable nginx.service //開機自啟動

created symlink from

/etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

[root@host nginx-1.15.9]

# netstat -anutp | grep nginx //先看一下,沒有開

[root@host nginx-1.15.9]

# systemctl start nginx //開啟

[root@host nginx-1.15.9]

# netstat -anutp | grep nginx //驗證一下,開了

tcp 0 0 0.0.0.0:80 0.0.0.0:* listen 23229/nginx: master

##配置引數解釋##

[unit]

description=nginx ###描述

after=network.target ####描述服務類別

[service]

type=forking ###後台執行形式

pidfile=/usr/local/nginx/logs/nginx.pid ###pid檔案位置

execstart=/usr/local/nginx/sbin/nginx ###啟動服務

execreload=/usr/bin/kill -s hup $mainpid ###根據pid過載配置

execstop=/usr/bin/kill -s quit $mainpid ###根據pid終止程序

privatetmp=true

[install]

wantedby=multi-user.target

nginx編譯安裝

nginx版本 1.12.2 1.安裝依賴包 yum install y gcc gcc c zlib zlib devel openssl openssl devel pcre pcre devel 2.編譯和安裝nginx 執行如下命令 3.安裝完成啟動nginx。如果用指定使用者啟動nginx...

Nginx編譯安裝

ububtu apt get install build essential apt get install libtool centos yum y install gcc automake autoconf libtool make yum install gcc gcc c 1 pcre庫 a...

編譯安裝Nginx

假設所有依賴都已解決,如遇到未安裝的程式則安裝後繼續 架設使用最高許可權使用者,如果不是則在命令前加上sudo 解壓到使用者目錄 tar zxvf nginx 1.6.2.tar.gz 配置安裝選項 編譯程式 make 安裝程式 make install 啟動程式 usr local nginx s...