centos7.4系统源码编译安装nginx
源码下载地址
http://nginx.org/download/
安装环境依赖
yum install gcc gcc-c++ automake pcre pcre-devel zlip zlib-devel openssl openssl-devel
解压
tar -zxvf nginx-1.18.0.tar.gz
进入文件夹
./configure --prefix=/usr/local/nginx
编译安装
make && make install
配置环境变量
vim /etc/profile
添加如下两行:
PATH=$PATH:/usr/local/nginx/sbin
export PATH
环境变量生效:source /etc/profile
开放centos端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
//开放端口生效
firewall-cmd --reload
//查看已开放端口
firewall-cmd --list-ports
启动nginx
nginx
配置nginx开启自启
vim /etc/init.d/nginx
#!/bin/bash
# Startup script for the nginx Web Server
# chkconfig: - 85 15
# description: nginx is a World Wide Web server. It is used to serve
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
设置开机启动
chkconfig nginx on
重启, 查看nginx服务是否自动启动
shutdown -h 0 -r
netstat -apn|grep nginx