下载:http://nginx.org/en/download.html
上传nginx-1.14.0.tar.gz
到/usr/local/
目录下;
[root@localhost /]# cd /usr/local/
[root@localhost local]# rz
解压tar包,解压到当前目录:
[root@localhost local]# tar -zxvf nginx-1.14.0.tar.gz
安装Nginx依赖包。由于 openssl-devel 依赖于 zlib-devel ,在通过yum进行安装时会自动解决依赖,因此在以下命令中省略了 zlib-devel 。:
[root@localhost ~]# yum -y install pcre-devel openssl-devel
Nginx的编译安装:
[root@localhost nginx-1.14.0]#./configure --prefix=/usr/local/nginx --with-http_ssl_module
或者
[root@localhost nginx-1.14.0]# ./configure \
> --prefix=/usr/local/nginx \
> --with-http_ssl_module
通过make命令编译和安装Nginx:
[root@localhost nginx-1.14.0]# make && make install
安装成功后,启动服务/停止服务命令
[root@localhost /]#cd /usr/local/nginx/sbin
启动nginx服务:
[root@localhost sbin]#./nginx
立即停止服务:# ./nginx -s stop
从容停止服务(完成工作任务后停止):# ./nginx -s quit
将nginx服务添加到环境变量中
查看当前环境变量:
[root@localhost sbin]# echo $PATH
/usr/local/java/jdk1.8.0_181/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
在上述结果中,环境变革是由冒号“:”分隔多个目录组成的字符串。当系统自动搜索环境变量时,会优先搜索最左边的路径。(即/usr/local/java/jdk1.8.0_181/bin),然后依次向右执行并停止搜索。如果在所有目录中都没有找到,则会提示 command not found (命令未找到)。
这些环境变量目录每个都有特定的用途,其中/bin和/sbin 放置常用程序,/sbin 表示需要管理员权限;
/usr/bin和/usr/sbin 放置一些工具软件的可执行程序;
/usr/local/bin和/usr/local/sbin 放置用户自行安装的可执行程序
因此,推荐将 Nginx 放入 /usr/local/sbin目录中。
创建软连接:
[root@localhost ~]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx
软连接创建成功后,可直接在任意目录使用nginx命令:
[root@localhost /]# nginx
[root@localhost /]# ps -ef|grep nginx
root 18990 1 0 08:41 ? 00:00:00 nginx: master process nginx
nobody 18991 18990 0 08:41 ? 00:00:00 nginx: worker process
root 18993 8166 0 08:41 pts/0 00:00:00 grep --color=auto nginx
[root@localhost /]#
将nginx服务添加到系统服务中
在CentOS 系统中, service 命令实际上是调用了 /etc/init.d/ 目录下的 shell )剧本,也就
是说,如下两行命令其实是等价的。
#直接执行脚本
[root@ localhost ~]# /etc/init.d/network restart
#通过 service 命令执行脚本
[root@ localhost ~] # service network restart
于是,在/etc/init.d/目录下新增nginx文件,文件中的shell脚本这样写:
#! /bin/bash
DAEMON=/usr/local/nginx/sbin/nginx
case "$1" in
start)
echo "Starting nginx daemon...zxl...."
$DAEMON && echo "SUCCESS_BY_ZXL"
;;
stop)
echo "Stopping nginx daemon...by_zxl..."
$DAEMON -s quit && echo "nginx -s quit SUCCESS"
;;
reload)
echo "Reloading nginx daemon..."
$DAEMON -s reload && echo "nginx -s reload SUCCESS"
;;
restart)
echo "Restarting nginx daemon..."
$DAEMON -s quit
$DAEMON && echo "nginx -s quit;nginx; SUCCESS"
;;
*)
echo "Usage:service nginx {start|stop|restart|reload}"
exit 2
;;
esac
保存退出文件,然后赋予执行权限
[root@localhost /]# chmod +x /etc/init.d/nginx
至此,可以使用service nginx stop
[root@localhost /]# service nginx stop
Stopping nginx daemon...by_zxl...
nginx -s quit SUCCESS
[root@localhost /]#
搞定~~~