隐藏

用nginx配置反向代理实现二级域名配置到公网ip的不同端口的应用

如何用nginx配置二级域名解析到ip的不同端口呢

总所周知,ip:80这种方式的web应用可以直接用ip去访问,原因是输入ip的时候,浏览器会自动的默认认为是ip:80这样的形式去访问。
利用这一点我们可以用域名解析到ip上进行只需要输入www.domain.com去访问web页面。各大网站也是如此。

如果是ip:80以外的端口怎么办?

一台服务器不可能说只部署一个web应用吧,其他的都要通过ip+端口或者域名+端口去访问多麻烦啊,而且样子也不好看呀。
这个时候,救世主nginx大爷就出现了,他说我有很多的NB功能啊,例如反向代理啊!

前提

你需要有一个域名和一台服务器(国内需备案)
然后去解析域名,添加两个A记录如下图

Nginx方向代理

我们要如何使用这个技能呢?

  • 1.首先找到你服务器中nginx的配置文件所在的文件夹
    一般都是/usr/local/nginx/conf/这个文件夹下有个nginx.conf或者default.conf反正.conf的文件都看一看
    命令是cat nginx.conf
  • 2.然后打开nginx.conf看一眼里面的配置
    主要是找到一句话叫做include xxxx/*.conf,如果没有你自己加一句吧
  • 3.然后进入这个xxxx文件夹下新建一个.conf,我这里是gogs.conf
    然后编辑gogs.conf的内容为下图,然后保存
  • 4.记得重启nginx,如果没报错的话,你配置应该成功了

然后打开浏览器输入git.aboutme.ink试试

成功咯!

然后我再来一个cloud.aboutme.ink试试,打开浏览器访问 cloud.aboutme.ink也可以访问了

gogs.conf的代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
server
{
listen 80;
server_name git.aboutme.ink;
location / {
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://127.0.0.1:10080;
}
access_log /home/wwwlogs/git.aboutme.ink.log;
}

后续

大家可以按照我的方法试试看,不行可以留言反馈咯,我会及时解决的。至于这两个应用怎么构建的,后续出教程啊!

---------------- The End ----------------