0%

Nginx安装

Nginx获得

  • http://nginx.org 官网
  • http://www.nginx.cn/doc/index.html 中文文档
  • 官网源码包
    1
    # wget http://nginx.org/download/nginx-1.16.0.tar.gz -P /usr/src

    编译环境安装

    1
    2
    # yum -y install gcc gcc-c++ autoconf automake make
    # yum -y install pcre pcre-devel zlib zlib-devel openssl openssl-devel

    创建nginx用户

    1
    # useradd -M -s /sbin/nologin nginx

编译安装Nginx

1
2
3
4
5
6
7
8
9
# tar zxvf nginx-1.16.0.tar.gz 

# cd nginx-1.16.0

# ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-stream

# make && make install

# chown nobody -R /usr/local/nginx/

修改nginx配置文件:

1
# vi /usr/local/nginx/conf/nginx.conf

修改pid:

1
pid         /var/run/nginx.pid;

Nginx启动

1
# /usr/local/nginx/sbin/nginx

查看端口号:

1
2
3
# lsof -i :80

# netstat -lntp

查看网站:

1
# elinks http://192.168.229.88 --dump

Nginx停止

使用killall命令终止nginx进程

1
# killall nginx

killall命令安装:

  1. 使用yum search killall 命令获得killall的安装包名
  2. yum install psmisc.x86_64

参考

从容停止服务
这种方法较stop相比就比较温和一些了,需要进程完成当前工作后再停止。

nginx -s quit

立即停止服务
这种方法比较强硬,无论进程是否在工作,都直接停止进程。

nginx -s stop

systemctl 停止
systemctl属于Linux命令

systemctl stop nginx.service

killall 方法杀死进程
直接杀死进程,在上面无效的情况下使用,态度强硬,简单粗暴!

killall nginx

Nginx 启动服务设置

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

添加:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

设置完成后可通过systemctl命令启动/关闭nginx服务:

1
2
3
4
# systemctl enable  nginx

# systemctl start nginx
# systemctl stop nginx