Nginx配置二级目录反向代理本机不同端口
前序
最近在家里的服务器上装了一大堆的服务器软件,大多数都需要Web网站访问的,比如:Gitlab、Apache、Jenkins等等。然而又因为是不同的应用,需要占用不同的端口,每次访问起来都需要在IP地址后面再加上端口号,应用太多了就老是记不住端口了。。这才突然发现遗漏Nginx这个神器。
简介
Nginx 主要的作用就是反向代理和负载均衡了,一般在互联网公司内,作为负载均衡比较多。但是别忘了,它的一个主要用途还有反向代理。在这里,我们就通过反向代理来使得隐藏端口,二级目录的形式访问这些服务器应用吧。
安装Nginx
如果想要安装最新版本,建议从官网下载源码,然后编译安装。不过我这里偷懒直接使用仓库源安装的,这样一个比较快,二个安装目录和systemd脚本都弄得好好的,堪称开箱即用啊。
Ubuntu/Debian
$ sudo apt-get update
$ sudo apt-get install nginx
反向代理配置
直接编辑nginx配置文件即可,文件所在位置/etc/nginx/config.d/default.conf
$ sudo vim /etc/nginx/config.d/default.confupstream gitlab {# 这里我们需要先手动修改Gitlab的默认访问端口,默认为80server 192.168.1.2:8098;
}upstream apache {server 192.168.1.2:8090;
}upstream rabbit {server 192.168.1.2:15672;
}server {listen 80;server_name localhost;charset utf-8;# http://192.168.1.2/file 即可访问apache文件服务器location /file {proxy_pass http://apache/;}location /rabbit {proxy_pass http://rabbit/;port_in_redirect on;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;}location /jenkins {proxy_pass http://192.168.1.2:8088/jenkins/;# Fix the "It appears that your reverse proxy set up is broken" error.# 修复点击系统管理,出现的反向代理设置有误提示port_in_redirect on;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;}# 直接IP访问就是Gitlablocation / {proxy_pass http://gitlab/;}
}
总结
Nginx是一个非常强大的工具,这里只是使用到了其实很小的一部分功能。当然也有其他的途径可以做到,但是很少有Nginx这样简单方便的。
配置的过程中,需要注意的是Jenkins的配置,只配置一个proxy_pass的话,它会提示代理配置有误,所以需要多加一些配置。还有就是通过反向代理配置的Jenkins好像不能登录,会出现跳转到j_acegi_security_check报404错误,因为是自己家里用,所以我就直接去掉登录功能了,在Configure Global Security选项中,将启用安全钩去掉就好了。
如果有懂这个反向代理怎么登录的,还望不惜赐教。
Nginx配置二级目录反向代理本机不同端口相关推荐
- nginx使用二级路径反向代理不同IP和端口
场景描述: 通过二级目录(虚拟目录,应用程序)的方式访问同一ip+端口的不同应用,例如location是用户使用页面,location/admin/是管理页面,location部署在192.168.1 ...
- Apache:二级目录反向代理 – 实现不同端口服务在同一网站的访问
应用背景:在同一服务器网页上,通过不同目录访问内网的不同服务器. 开启相应模块:虚拟主机和代理模块 为了方便操作,最好启用虚拟主机来配置: # 在httpd.conf中取消注释以下代码LoadModu ...
- Nginx-04:Nginx配置实例之反向代理1
Nginx配置实例之反向代理 目的:在浏览器中数输入www.123.com跳转到tomcat主页. 1.准备工作 (1)安装tomcat,使用默认端口8080,进入tomcat的bin目录中,./st ...
- Nginx-05:Nginx配置实例之反向代理2
Nginx配置实例之反向代理 目的:使用nginx反向代理,根据访问的路径跳转到不同端口的服务器中,nginx监听端口为9001. 访问http://192.168.17.129:9001/edu/ ...
- nginx 二级目录 php,Nginx 配置二级目录支持
Nginx 配置二级目录并不像 apache 那么简单,但二级目录的配置在实际工作中又经常用到,现整理如下.欢迎大家访问 二愣的闲谈杂鱼 在 /etc/nginx 目录下创建文件夹 sublocati ...
- nginx配置二级目录,反向代理不同ip+端口
场景描述: 通过二级目录(虚拟目录,应用程序)的方式访问同一ip+端口的不同应用,例如location是用户使用页面,location/admin/是管理页面,location部署在192.168.1 ...
- 【nginx配置】 proxy_pass反向代理配置中url后面加不加/的说明
在日常的web网站部署中,经常会用到nginx的proxy_pass反向代理,有一个配置需要弄清楚:配置proxy_pass时,当在后面的url加上了/,相当于是绝对根路径,则nginx不会把loca ...
- nginx配置url重定向-反向代理
本文系统:Centos6.5_x64 三台主机:nginx主机,hostname: master.lansgg.com IP: 192.168.10.128 apache主机,hostname: c ...
- 详解nginx配置url重定向-反向代理
本文系统:Centos6.5_x64 三台主机:nginx主机,hostname: master.lansgg.com IP: 192.168.10.128 a ...
最新文章
- pythonsqlite视图_SQLite VIEW/视图
- 【相对/绝对路径】JavaWeb项目中,请求转发与重定向的路径写法
- WriteFile写磁盘扇区是87错误的原因
- C++ 在屏幕上用星号打印菱形
- The command ‘/bin/sh -c apt-get install -y vim’ returned a non-zzero code: 100
- JEECG UI标签库做成单独开源项目规划
- LeetCode 500. Keyboard Row
- RANSAC与圆柱拟合
- Maven MyEclipse创建web项目没有src/maim/java
- 神奇的datetime和datetime,一毫秒引发的血案
- 二叉树的构造及其前序,中序,后序遍历
- 惊心动魄的阿波罗登月:软件和程序员才是幕后的英雄
- iOS 关于单例那点事
- 偷懒才能编程序——计算机达人成长之路(18)
- 信息安全等级保护建设(二,三级)需上的设备
- jhipster使用简明教程
- 西门子PLC S7 200 SMART 没有触摸屏的仿真
- Android 各国语言缩写及简称详细介绍
- 开源配置管理中心apollo使用方法
- 上门洗车APP --- Android客户端开发 前言及业务简介