centos7源码安装nginx-1.16.1(脚本) 并加入系统运行

centos7源码安装nginx-1.16.1(脚本)

#!/bin/bash
#2020年11月18日 12:50:15
#auto install nginx web
#by author 
###################################
# yum安装包
yum install -y wget net-tools gzip make tar gcc 
yum install -y pcre pcre-devel zlib-devel firewalld
# wget获取安装包,-c 断点续传
wget -c http://nginx.org/download/nginx-1.16.1.tar.gz
# tar解压,-x extract解压   z gzip格式  -v verbose详细  -f file文件
tar -zvxf nginx-1.16.1.tar.gz
cd nginx-1.16.1/
# 创建用户,不登录, -M不创建家目录(安全)
# 新建用户组 www(所有的网站相关的用户,统一放到 www 用户组)
groupadd www
# 新建用户
# 创建用户,不登录, -M不创建家目录(安全) useradd -M -s /sbin/nologin nginxuser
useradd user_nginx_www -g www -s /usr/sbin/nologin
useradd user_ftp_www -g www
# 预编译
#./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module
./configure --user=user_nginx_www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module  --with-http_gzip_static_module --with-ipv6
# 编译&&安装
make -j 2&& make install
# 创建指定的ngxin工作目录
mkdir -p /usr/local/nginx/wwwroot/www.tests.com
chmod +w /usr/local/nginx/wwwroot/www.tests.com
# 修改权限 赋予nginx用户操作该目录的权限
chown -R user_nginx_www:www /usr/local/nginx/wwwroot/www.tests.com
# 启动 这里需要确定最终安装的目录
/usr/local/nginx/sbin/nginx

# 暂时关闭selinux
#setenforce 0
# 关闭防火墙
#systemctl stop firewalld.service
# 开放80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
#firewall-cmd --zone=public --add-port=39001/tcp --permanent
# 修改后的防火墙规则生效
firewall-cmd --reload
# 查看进程
ps -ef|grep nginx
# 查看进程端口
netstat -nltp |grep 80

vim 编辑为一个nginx_installs.sh文件,然后sh nginx_installs.sh文件执行即可

设置nginx的环境变量

//设置所有用户的环境变量
vim /etc/profile
//添加设置nginx的可执行目录
export PATH=$PATH:/usr/local/nginx/sbin
//环境变量设置生效
source /etc/profile

配置自启动

在/etc/​rc.d/init.d/下面增加一个脚本,名称 nginx,脚本内容如下

在命令行上执行 
vim /etc/rc.d/init.d/nginx

脚本内容

#! /bin/bash
# chkconfig: 35 85 15  
# description: Nginx is an HTTP(S) server, HTTP(S) reverse
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
SCRIPTNAME=/etc/init.d/$NAME
test -x $DAEMON || exit 0
d_start(){
    $DAEMON || echo -n " already running"
}
d_stop() {
    $DAEMON -s quit || echo -n " not running"
}
d_reload() {
    $DAEMON -s reload || echo -n " counld not reload"
}
case "$1" in
start)
    echo -n "Starting $DESC:$NAME"
    d_start
    echo "."
;;
stop)
    echo -n "Stopping $DESC:$NAME"
    d_stop
    echo "."
;;
reload)
    echo -n "Reloading $DESC configuration..."
    d_reload
    echo "reloaded."
;;
restart)
    echo -n "Restarting $DESC: $NAME"
    d_stop
    sleep 2
    d_start
    echo "."
;;
*)
    echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
    exit 3
;;
esac
exit 0

加入服务并开机自启动
chmod +x /etc/rc.d/init.d/nginx (设置可执行权限)
chkconfig --add nginx (添加系统服务)
chkconfig --level 35 nginx on (开机自启动)

systemctl start nginx

1、启动 service nginx start
2、停止 service nginx stop
3、重启 service nginx restart
4、重载配置 service nginx reload

 

Welcome to nginx!

修改nginx.conf配置文件 vim /usr/local/nginx/conf/nginx.conf

user user_nginx_www www; #替换为我们的安装脚本中赋予的用户
#user  nobody; 
worker_processes  2;
include /usr/local/nginx/user_conf/*.conf; #引入我们自定义的conf配置文件

检查配置文件nginx.conf的正确性命令:nginx -t

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值