centos 7 编译安装nginx 及添加 nginx 到系统服务

2018/10 07 23:10

一、安装准备

首先由于nginx的一些模块依赖一些lib库,所以在安装nginx之前,必须先安装这些lib库,这些依赖库主要有g++、gcc、openssl-devel、pcre-devel和zlib-devel 所以执行如下命令安装



$   yum install gcc-c++  
$   yum install pcre pcre-devel  
$   yum install zlib zlib-devel  
$   yum install openssl openssl--devel

二、安装Nginx

安装之前,最好检查一下是否已经安装有nginx

1
$   find -name nginx 

如果系统已经安装了nginx,那么就先卸载

1
$   yum remove nginx 

首先进入/usr/local目录

1
$   cd /usr/local 

从官网下载最新版的nginx

1
$   wget http://nginx.org/download/nginx-1.7.4.tar.gz 

解压nginx压缩包

1
$   tar -zxvf nginx-1.7.4.tar.gz 

会产生一个nginx-1.7.4 目录,这时进入nginx-1.7.4目录

1
$   cd  nginx-1.7.4 

接下来安装,使用--prefix参数指定nginx安装的目录,make、make install安装

1
2
3
$   ./configure  $默认安装在/usr/local/nginx  
$   make 
$   make install

如果没有报错,顺利完成后,最好看一下nginx的安装目录

1
$   whereis nginx

安装完毕后,进入安装后目录(/usr/local/nginx)便可以启动或停止它了。

三、添加Nginx到系统服务

创建nginx启动命令脚本

1
vi /etc/init.d/nginx

插入以下内容, 注意修改PATH和NAME字段, 匹配自己的安装路径

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#! /bin/bash
# chkconfig: - 85 15
PATH=/usr/local/nginx
DESC="nginx daemon"
NAME=nginx
DAEMON=$PATH/sbin/$NAME
CONFIGFILE=$PATH/conf/$NAME.conf
PIDFILE=$PATH/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
set -e
[ -x "$DAEMON" ] || exit 0
do_start() {
$DAEMON -c $CONFIGFILE || echo -n "nginx already running"
}
do_stop() {
$DAEMON -s stop || echo -n "nginx not running"
}
do_reload() {
$DAEMON -s reload || echo -n "nginx can't reload"
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
do_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
do_stop
echo "."
;;
reload|graceful)
echo -n "Reloading $DESC configuration..."
do_reload
echo "."
;;
restart)
echo -n "Restarting $DESC: $NAME"
do_stop
do_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2
exit 3
;;
esac
exit 0

设置执行权限

chmod a+x /etc/init.d/nginx

注册成服务

chkconfig --add nginx

设置开机启动

1
chkconfig nginx on

重启, 查看nginx服务是否自动启动

shutdown -h 0 -r
netstat -apn|grep nginx

对nginx服务执行停止/启动/重新读取配置文件操作

1
2
3
4
5
6
7
8
#启动nginx服务
systemctl start nginx.service
#停止nginx服务
systemctl stop nginx.service
#重启nginx服务
systemctl restart nginx.service
#重新读取nginx配置(这个最常用, 不用停止nginx服务就能使修改的配置生效)
systemctl reload nginx.service

--转载请注明: http://91o.cc/centos-7-%e7%bc%96%e8%af%91%e5%ae%89%e8%a3%85nginx-%e5%8f%8a%e6%b7%bb%e5%8a%a0-nginx-%e5%88%b0%e7%b3%bb%e7%bb%9f%e6%9c%8d%e5%8a%a1/

作者 - 分类 未分类

发表回复

(必填)