使用NGINX反向代理实现不同域名到不同端口的转发(Linux、Alist、阿里云)

本文介绍了如何在阿里云服务器上通过安装和配置NGINX,实现使用test.com域名的二级域名(如app.test.com、bpp.test.com等)访问不同服务器的指定端口。包括设置DNS解析和创建反向代理规则。
摘要由CSDN通过智能技术生成

由于使用阿里云服务器+Alist 挂载了云盘,但是Alist默认监听5244端口,所以访问Alist需要输入公网ip:端口号才能访问,同理,其他的服务需要输入ip:不同端口号访问,正好手上有一个域名,想直接使用不同的二级域名直接访问不同的端口,即实现如下这样的效果:

假设有test.com 域名,使:

app.test.com 访问 ip:端口1 (文中以1.2.3.4:1234为例子)

bpp.test.com 访问 ip:端口2

cpp.test.com 访问 ip:端口3

1.配置二级域名解析

首先最重要的当然是拥有test.com这个域名,拥有域名之后,需要在云服务商那边设置DNS解析,这样输入例如app.test.com这样的网址,浏览器才知道要去哪个ip。这里使用的是阿里云服务器,购买好域名之后,添加解析记录,并输好二级域名以及服务器IP地址即可。

2.安装NGINX

这里使用的是Ubuntu系统,输入以下指令安装NGINX

sudo apt-get install nginx

3.配置反代

安装完成后,基本上的所有配置文件在 /etc/nginx/ 文件夹下,这里有nginx.conf默认配置文件,且里面已经将 /etc/nginx/conf.d/ 文件夹引用了,所以可以不管默认配置文件,直在 /etc/nginx/conf.d/ 下面生成一个reverse_proxy.conf文件来配置我们自己的反代。

输入一下指令生成新的配置文件:
vi /etc/nginx/conf.d/reverse_proxy.conf
按下“i”键进入编辑模式,输入如下的代码:
server 
{ 
listen 80; 
server_name app.test.com;  #注意将域名替换成你所使用的实际域名
location / { 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
proxy_set_header X-Forwarded-Proto $scheme; 
proxy_set_header Host $http_host; 
proxy_set_header X-Real-IP $remote_addr; 
proxy_set_header Range $http_range; 
proxy_set_header If-Range $http_if_rang; 
proxy_redirect off; 
proxy_pass http://1.2.3.4:1234; #注意将ip和端口号根据实际情况替换
# the max size of file to upload 
client_max_body_size 20000m; 
} 
}

注意将二级域名"sever_name"和ip及端口"proxy_pass"都依据实际情况替换,由于项目是依据Alist搭建的,这里其他部分的代码来自于Alist的手册,其他的项目请依据项目内容做修改。

如果有其它的二级域名需要转发到不同的端口,可以直接将上述所有的代码复制在后面,重新建一个新的server,然后修改域名、IP和端口即可。

按下"ESC"键后,直接输入“:wq”,即可保存并退出这个配置文件。
输入以下指令,重新加载并重启nginx服务。
service nginx reload;service nginx start

到这已经完成了NGINX的配置,接下来在浏览器输入相应的二级域名即可访问不同的端口。

转载请注明出处!

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值