每次需要在Nginx增加上下文,都需要添加如下两段

​ server.conf

    upstream serverdownloadPage {
server 10.11.19.6:3023;
}

​ http.conf and https.conf

    location ^~ /downloadPage/ {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://serverdownloadPage;
}

既然每次都是重复的内容,只是需要修改部分字符串,当然要想办法用Jenkins去实现了。

脚本如下:

[root@mysql ~]# cat add_server.sh
#!/bin/bash cat <<EOF>> /usr/local/nginx/conf/vhost/server.conf
upstream server$1 {
server $2:$3;
}
EOF cat <<EOF> /tmp/vhosts.file
location ^~ /$1/ {
proxy_redirect off;
proxy_set_header Host \$host;
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
proxy_pass http://server$1;
}
EOF sed -i '36r /tmp/vhosts.file' /usr/local/nginx/conf/vhost/http.conf
sed -i '41r /tmp/vhosts.file' /usr/local/nginx/conf/vhost/https.conf

如何增加上下文呢

./add_server.sh mmp 10.11.19.17 12999

同样Jenkins的配置也就简单了。

使用

使用 jenkins 为 nginx 增加上下文的更多相关文章

  1. 为nginx增加nginx_http_concat模块

    为nginx增加nginx_http_concat模块 时间 2013-06-05 22:14:56  我行我思 原文  http://www.fanjun.me/?p=562 主题 Nginx 缘由 ...

  2. Nginx 增加 Image 缩略图 功能

            Nginx 增加 Image 缩略图功能,需要使用Nginx Image 缩略图 模块     官网地址:https://github.com/3078825/ngx_image_th ...

  3. Running Jenkins behind Nginx

    original : https://wiki.jenkins-ci.org/display/JENKINS/Running+Jenkins+behind+Nginx In situations wh ...

  4. Debian 为nginx增加第三方模块

    为nginx增加第三方模块需要重新编译nginx的,但是debian在安装nginx的时候做了很多事情,比如systemd,/etc/nginx/里的各种文件,所以我们最好在debian源代码包的基础 ...

  5. jenkins中点击增加云没反应

    问题:非容器版jenkins中无法增加云 分析: 之前在jenkins中找自带的Kubernetes 插件找不到,所以就下载Kubernetes 插件进行离线安装,明明显示安装成功了,仍然不能增加云, ...

  6. nginx增加新模块

    以gunzip这个模块为例,讲述一下,在nginx中如何安装新的模块 1.首先查看nginx已经安装了哪些模块. nginx –V 2.发现没有gunzip模块,安装 进入nginx的安装目录中,不是 ...

  7. nginx填坑补充(nginx根据上下文跳转ip或者域名)

    今天有一个需求,要根据上下文调到不同的ip或域名地址,使用上下文做域名跳转的时候,proxy_pass域名后面一定要带‘/’否则会把nginx的上下文自动带入,这样就行. location ^~ /d ...

  8. Jenkins+Github+Nginx实现前端项目自动部署

    前言 最近在搭建一个自己的网站,网站框架搭好了要把项目放到服务器运行,但是每次更新网站内容就要手动部署一次,实在很麻烦,于是就想搭建一套自动化部署的服务.看了一些案例最后选用现在比较主流的Jenkin ...

  9. nginx增加第三方模块

    增加第三方模块 ============================================================ 一.概述nginx文件非常小但是性能非常的高效,这方面完胜ap ...

随机推荐

  1. uni-app 实现热更新

    前端打包 app 即把写好的静态资源文件套壳打包成 app ,而热更新即下载并替换 app 内部的静态资源文件,实现 app 的版本升级. 在uni-app 中,我们是如何实现热更新的呢?下面来看代码 ...

  2. Vue和其他框架的区别

    原文地址 React React 和 Vue 有许多相似之处,它们都有: 使用 Virtual DOM 提供了响应式 (Reactive) 和组件化 (Composable) 的视图组件. 将注意力集 ...

  3. Docker容器组件

    从docker1.11版本开始,docker容器运行已经不是简单的通过docker daemon守护进程来启动,而是集成了containerd.containerd-shim.runC等多个组件.do ...

  4. python安装第三方库报错:Cannot uninstall '***'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

    pip install --ignore-installed ${PACKAGE_NAME}

  5. 深入理解C语言-函数指针

    函数指针在C++中有着重要的应用,函数的函数名其本质就是代表一个地址,这个地址叫做函数入口,得到这个地址就可以对这个函数进行各种操作. 函数类型基础 函数三要素: 名称.参数.返回值 C语言中的函数有 ...

  6. Linux第三阶段题型测试

    1.如何取得/etiantian文件的权限对应的数字内容,如-rw-r--r--为644,要求使用命令取得644或0644这样的数字. 解答: 1)最土的方法:ls -l /etiantian |cu ...

  7. vi去掉^M

    Windows下编辑的文本文件or程序文件,拷贝到linux下,用vi打开时,有时候会看到每行末尾有个 ^M 的符号. 这里介绍一个可以快速去除^M符号的方法: 用vi编辑器打开该文件,然后输入: : ...

  8. Git+TortoiseGit使用帮助

    背景: 公司产品人员需要使用到Git做文档的管理,作为开发人员的我稍作指导 需求: 指导产品人员进行简单使用ToreoiseGit进行Git操作 安装: 链接:https://pan.baidu.co ...

  9. MySQL线程池(THREAD POOL)的原理

    MySQL常用(目前线上使用)的线程调度方式是one-thread-per-connection(每连接一个线程),server为每一个连接创建一个线程来服务,连接断开后,这个线程进入thread_c ...

  10. PAT A1020 Tree Traversals(25)

    题目描述 Suppose that all the keys in a binary tree are distinct positive integers. Given the postorder ...