Nginx安装与虚拟主机配置shell脚本

简介: Nginx安装与虚拟主机配置shell脚本

今天继续给大家介绍Linux运维相关知识,本文主要内容是Nginx安装与虚拟主机配置shell脚本。

一、NGINX安装
在今天的脚本上,我们开始尝试使用函数和参数,以增强脚本的灵活性和实现脚本的模块化。
我们定义一个NGINX_INSTALL()的函数,主要用于安装NGINX,该函数需要下载NGINX的安装包,将该安装包解压,并进行预编译、编译和安装操作,相关脚本如下所示:

NGINX_INSTALL(){
wget -c http://nginx.org/download/nginx-1.12.0.tar.gz
echo "Nginx download OK!"
yum install -y gcc gcc-c++ openssl-devel pcre-devel pcre
echo "Nginx Rliance OK!"
tar xf nginx-1.12.0.tar.gz
mv nginx-1.12.0 /opt/nginx
useradd nginx
echo "Nginx User create OK!"
cd /opt/nginx
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
}
1
2
3
4
5
6
7
8
9
10
11
12
13
二、NGINX配置
接下来,我们还需要配置NGINX,以实现虚拟注意。定义一个NGINX_CONFIG()的函数,并且在该函数中传输两个参数,第一个参数是NGINX虚拟主机所监听的端口,第二个参数是NGINX虚拟主机的域名。相关脚本如下所示:

NGINX_CONFIG(){
cd /usr/local/nginx/
cp -a conf/nginx.conf conf/nginx.conf.bak
cat >conf/nginx.conf<> /data/www/$2/index.html
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
在上述脚本中,我们直接把NGINX的原有配置文件进行了备份,并且把新的配置文件直接写入到了脚本中。

三、函数调用与启动
最后,我们还要写一段脚本,调用上述两个函数,并且启动NGINX,相关脚本如下所示:

NGINX_INSTALL
NGINX_CONFIG $1 $2
/usr/local/nginx/sbin/nginx
1
2
3
四、脚本展示
我们把上述所有脚本整合到一起,形成完整的脚本,如下所示:

!/bin/bash

NGINX_INSTALL(){
wget -c http://nginx.org/download/nginx-1.12.0.tar.gz
echo "Nginx download OK!"
yum install -y gcc gcc-c++ openssl-devel pcre-devel pcre
echo "Nginx Rliance OK!"
tar xf nginx-1.12.0.tar.gz
mv nginx-1.12.0 /opt/nginx
useradd nginx
echo "Nginx User create OK!"
cd /opt/nginx
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install

}
NGINX_CONFIG(){
cd /usr/local/nginx/
cp -a conf/nginx.conf conf/nginx.conf.bak
cat >conf/nginx.conf<> /data/www/$2/index.html
}
NGINX_INSTALL
NGINX_CONFIG $1 $2
/usr/local/nginx/sbin/nginx

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58

五、效果检验
在完成上述脚本后,我们直接执行该脚本,执行命令:

bash nginx_install.sh 81 www.pzz.com
1
该脚本运行结果如下所示:

从上图可以看出,该脚本运行后,已经开始监听80和81端口。我们在本地hosts文件中,将www.pzz.com重定向到该虚拟机上,然后访问该域名的80和81端口,结果如下所示:

从上图可以看出,该脚本可以成功安装Nginx并且配置虚拟主机!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/125593045

目录
相关文章
|
21小时前
|
弹性计算 运维 Shell
每天解析一个shell脚本(61)
【4月更文挑战第26天】shell脚本解析及训练(61)
11 3
|
22小时前
|
弹性计算 运维 Shell
每天解析一个shell脚本(58)
【4月更文挑战第26天】shell脚本解析及训练(58)
67 0
|
22小时前
|
弹性计算 Shell 数据安全/隐私保护
每天解析一个shell脚本(56)
【4月更文挑战第26天】shell脚本解析及训练(56)
13 0
|
2天前
|
负载均衡 前端开发 应用服务中间件
Nginx安装与使用
Nginx安装与使用
12 0
|
2天前
|
负载均衡 Java 应用服务中间件
nginx安装在linux上
nginx安装在linux上
22 2
|
2天前
|
监控 Shell 应用服务中间件
第十二章 Shell脚本编写及常见面试题(二)
第十二章 Shell脚本编写及常见面试题(二)
|
Shell 应用服务中间件 nginx
NGINX结合SHELL统计用户的UV及IP汇总
公司新的需求,怀疑PV和IP的比例不对,看是不是有恶意的东东: NGINX配置:   log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$sta...
1068 0
|
26天前
|
运维 前端开发 应用服务中间件
LNMP详解(八)——Nginx动静分离实战配置
LNMP详解(八)——Nginx动静分离实战配置
28 0
|
25天前
|
前端开发 应用服务中间件 nginx
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
100 0
|
1天前
|
前端开发 JavaScript 应用服务中间件
前端vue2、vue3去掉url路由“ # ”号——nginx配置(二)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
16 0