Linux离线安装nginx及配置自启动

Linux离线安装nginx及配置自启动

1、离线下载地址

http://nginx.org/download

​ 可自己选择版本下载进行安装,此文档是下载的 nginx-1.14.0.tar.gz

2、安装

2.1、解压缩
tar -zxvf nginx-1.14.0.tar.gz
2.2、安装
cd nginx-1.14.0

./configure && make && make install

nginx安装.png

2.3、启动&停止&退出&重启
cd /usr/local/nginx/sbin/
./nginx  #启动
./nginx -s stop #停止 此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。
./nginx -s quit #退出 此方式停止步骤是待nginx进程处理任务完毕进行停止。
./nginx -s reload #重启 修改配置后重新加载生效./nginx -s reopen :重新打开日志文件

3、查看nginx进程及杀掉进程

ps -ef|grep nginx #查询进程号
kill -QUIT 主进程号  #从容停止
kill -TERM 主进程号 #快速停止
kill -9 主进程号 #强制停止

4、/etc/init.d Linux开机自启动

4.1 在/etc/init.d下创建nginx
mkdir nginx
vim nginx

​ 内容参考nginx官方文档:https://www.nginx.com/resources/wiki/start/topics/examples/redhatnginxinit/

4.2 修改配置
nginx=”/usr/local/nginx/sbin/nginx” //修改成nginx执行程序的路径。
NGINX_CONF_FILE=”/usr/local/nginx/conf/nginx.conf” //修改成nginx.conf文件的路径。
4.3 设置文件的执行权限
chmod a+x /etc/init.d/nginx

设置权限.png

4.4 nginx服务加入chkconfig管理列表
chkconfig --add /etc/init.d/nginx
4.5 通过service启动&关闭&重启
service nginx start # 启动
service nginx stop  #立即停止	 
service nginx restart #重启 
4.6 设置开机启动
chkconfig nginx on

​ 查看结果

重启查看nginx进程.png

5、遇到的问题

5.1、service nginx stop 失效的问题

​ 执行service nginx stop返回[OK] 查看nginx进程,nginx进程依然存在并没有关闭

5.1.1 解决方案:杀掉nginx进程
ps -ef|grep nginx #查询进程号
kill -9 主进程号 #强制停止
service nginx start # 启动
5.1.2 猜想问题原因

​ 已经通过/sbin/nginx 启动nginx,在未修改配置文件的情况下,根据/conf/nginx.conf配置文件,nginx的主进程号存放在 /log/nginx.pid文件内,service nginx stop/start 时读取的进程是/etc/init.d/nginx脚本内的,可能不一致,导致service nginx stop命令失效

5.2 /bin/sh^M: bad interpreter

​ 通过Windows系统上传nginx文件到/etc/init.d/目录下,执行/etc/init.d/nginx stop时报错

5.2.1 原因

​ dos格式文件传输到unix系统时,会在每行的结尾多一个^M(/r)

5.2.2 解决方法

​ 打开nginx文件,设置unix文件格式

    vi xxx(报错的那个文件)
    :set ff ? #如果出现fileforma=dos,这就是文件格式问题
    :set fileformat=unix # 设置为unix格式文件
    :wq # 保存    
5.3 查看nginx在linux安装目录
5.3.1 方法一
# 通过ps命令查看
ps -ef|grep nginx

ps命令查看nginx进程.jpg

5.3.2 方法二
# 通过ll命令查看,${PID}通过该ps命令获得
ll /proc/${PID}/exe

ll命令查看nginx进程.jpg

posted on 2021-01-18 15:20  cxbks  阅读(189)  评论(0)    收藏  举报