安装依赖包
yum -y install pcre-devel zlib-devel gcc*
创建运行用户、组(Nginx服务程序默认以nobody身份运行,建议为其创建专门的用户账号,以便更准确地控制其访问权限,增加灵活性,降低安全风险)
创建名为nginx的用户,不建宿主目录文件夹,禁止登录到Shell环境
useradd -M -s /sbin/nologin nginx
解压到/usr/src/
tar zxvf nginx-1.12.0.tar.gz -C /usr/src/
进入目录
cd /usr/src/nginx-1.16.0/
配置
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
安装
make && make install
检查是否出错
echo $ ?
创建nginx链接文件,以便直接执行“nginx”命令就可以调用Nginx的主程序
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
对配置文件检查
nginx -t
编写脚本实现Nginx服务启动、停止、重载等操作
vim /etc/init.d/nginx
添加以下内容:
#!/bin/bash
# chkconfig: - 99 20
# description: Nginx Server Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)
$PROG
;;
stop)
kill -s QUIT $(cat $PIDF)
;;
restart)
$0 stop
$0 start
;;
reload)
kill -s HUP $(cat $PIDF)
;;
status)
[ -f $PID ] &> /dev/null
if [ $? -eq 0 ]
then
netstat -anpt | grep nginx
else
echo "Nginx is not running."
fi
;;
*)
echo "Usage: $0 {start|stop|restart|reload|status}"
esac
exit 0
为脚本添加执行权限
chmod +x /etc/init.d/nginx
添加nginx为系统服务
chkconfig --add nginx
启动nginx服务
systemctl start nginx