博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ubuntu 16.04 -- 同时配置Nginx(转发)和frp(内网映射)和HTTPS(ca加密) - 端口转发
阅读量:6376 次
发布时间:2019-06-23

本文共 1656 字,大约阅读时间需要 5 分钟。

Ubuntu16.04下:

sudo apt -get nginx

用这条命令安装完nginx之后, nginx在该目录下:

 

然后配置nginx:

 

如下:

 

 

红圈圈住的地方多写几个可以做负载均衡. 端口转发

 

 

什么是端口转发

当我们在服务器上搭建一个图书以及一个电影的应用,其中图书应用启动了 8001 端口,电影应用启动了 8002 端口。此时如果我们可以通过

localhost:8001    //图书localhost:8002    //电影

 

但我们一般访问应用的时候都是希望不加端口就访问域名,也即两个应用都通过 80 端口访问。但我们知道服务器上的一个端口只能被一个程序使用,这时候如何该怎么办呢?一个常用的方法是用 Nginx 进行端口转发。Nginx 的实现原理是:用 Nginx 监听 80 端口,当有 HTTP 请求到来时,将 HTTP 请求的 HOST 等信息与其配置文件进行匹配并转发给对应的应用。例如当用户访问 book.douban.com 时,Nginx 从配置文件中知道这个是图书应用的 HTTP 请求,于是将此请求转发给 8001 端口的应用处理。当用户访问 movie.douban.com 时,Nginx 从配置文件中知道这个是电影应用的 HTTP 请求,于是将此请求转发给 8002 端口的应用处理。一个简单的 Nginx 配置文件(部分)如下面所示:

 

#配置负载均衡池#Demo1负载均衡池upstream book_pool{    server 127.0.0.1:8001;}#Demo2负载均衡池upstream movie_pool{    server 127.0.0.1:8002;}#Demo1端口转发server {    listen       80;    server_name  book.chanshuyi.com;    access_log logs/book.log;    error_log logs/book.error;        #将所有请求转发给demo_pool池的应用处理    location / {        proxy_set_header Host $host;        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;        proxy_pass http://book_pool;    }}#Demo2端口转发server {    listen       80;    server_name  movie.chanshuyi.com;    access_log logs/movie.log;    error_log logs/movie.error;        #将所有请求转发给demo_pool池的应用处理    location / {        proxy_set_header Host $host;        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;        proxy_pass http://movie_pool;    }}

 

上面这段配置实现了:

1、当用户访问的域名是:http://book.chanshuyi.com 时,我们自动将其请求转发给端口号为 8001 的 Tomcat 应用处理。

2、当用户访问的域名是:http://movie.chanshuyi.com 时,我们自动将其请求转发给端口号为 8002 的 Tomcat 应用处理。

上面的这种技术实现就是端口转发。端口转发指的是由软件统一监听某个域名上的某个端口(一般是80端口),当访问服务器的域名和端口符合要求时,就按照配置转发给指定的 Tomcat 服务器处理。我们常用的 Nginx 也有端口转发功能。

 

转载地址:http://fptqa.baihongyu.com/

你可能感兴趣的文章
360该不该拍?
查看>>
用Xib创建控制器
查看>>
oracle的sqlplus和dos的中文乱码问题
查看>>
LVS+keepalived高可用负载均衡集群部署(二)---LAMP网站服务器与LVS服务器
查看>>
Struts2之简单数据类型转换
查看>>
python 打印数字
查看>>
iptables规则的查看、添加、删除和修改
查看>>
打开网站显示输入用户名和密码
查看>>
size_t的32位和64位兼容
查看>>
HBase全分布式模式的安装和配置
查看>>
Spring 框架的设计理念与设计模式分析
查看>>
十年web老兵整理的前端视频资料
查看>>
工作线程数究竟要设置为多少
查看>>
10个Python 统计报表/图表图形类库
查看>>
关于 xargs 参数被截断,tar 文件被覆盖的问题
查看>>
CentOS 6.3 上安装 Oracle 11g R2(转)
查看>>
js实现滚动新闻效果
查看>>
Nginx出现could not build the server_names_hash 解决办法
查看>>
Netbeans8在web项目中创建servlet
查看>>
高可用haproxy调度后端服务器实现动静分离集群架构
查看>>