ubuntu 上将请求定向到不同端口上的本地主机的最简单方法是什么?
What is the easiest way on ubuntu to direct a request to a localhost on a different port?
我正在 ubuntu 虚拟盒子图像上设置开发环境。我有 2 个应用程序,它们通常部署在具有不同端口的不同应用程序服务器上:
- 应用A
- a.myapp.com:7001
- 面向网络的应用程序
- 充当应用程序 B 上服务的服务器到服务器代理
- 从配置文件中获取应用程序 B 的主机和端口
- 应用程序 B:b.myapp.com:7002
- 仅休息服务(无法从浏览器访问)
在虚拟映像上,我只想部署 1 个带有 2 个 war 的应用服务器,以避免 2 个带有 2 个独立端口的应用服务器的内存开销。从长远来看,这实际上就像 10 个应用程序,因此需要将它们全部保存在 1 个服务器上。
我目前的策略是我正在使用 /etc/hosts 将绑定到 a.myapp.com 的任何请求定向回本地主机,并且它对应用程序 A 运行良好。我想对 [=41 做类似的事情=]:7002 但端口不同,据我所知,我无法设置主机文件来更改端口。
在 ubuntu 中将绑定到 b.myapp.com:7002 的网络请求转发回 127.0.0.1:7001 上的单个应用程序服务器 运行 的最简单方法是什么。我是否使用像 nginx 这样的 Web 代理,是否使用端口转发等?我有点 linux 菜鸟所以要温柔。我的主要驱动力是保持资源最少。 nginx 可能会占用更多资源,但从长远来看可能会派上用场,因此可以选择。
原来是使用 nginx 和主机文件的组合的简单解决方案。
1).将两个域添加到 /etc/host 文件
- 127.0.0.1a.myapp.com
- 127.0.0.1b.myapp.com
2).在 nginx.config
的 http 部分下安装 nginx 并定义一个服务器(反向代理)
server {
listen 7002;
#listen 7003; in future I can add N number ports for nginx to listen on
#listen 7004; in future I can add N number ports for nginx to listen on
location / {
proxy_pass http://127.0.0.1:7001/;
}
}
结果是:
- 当我转到 a.myapp.com:7001 时,hosts 文件强制它解析为
127.0.0.1:7001
- 当我转到 b.myapp.com:7002 时,主机文件将其解析为 127.0.0.1:7002
- nginx 正在侦听 127.0.0.1:7002 并充当 127.0.0.1:7001 的反向代理
- 将来我可以让相同的服务器将端口 7003/7004 上的请求重定向到端口 7001
我正在 ubuntu 虚拟盒子图像上设置开发环境。我有 2 个应用程序,它们通常部署在具有不同端口的不同应用程序服务器上:
- 应用A
- a.myapp.com:7001
- 面向网络的应用程序
- 充当应用程序 B 上服务的服务器到服务器代理
- 从配置文件中获取应用程序 B 的主机和端口
- 应用程序 B:b.myapp.com:7002
- 仅休息服务(无法从浏览器访问)
在虚拟映像上,我只想部署 1 个带有 2 个 war 的应用服务器,以避免 2 个带有 2 个独立端口的应用服务器的内存开销。从长远来看,这实际上就像 10 个应用程序,因此需要将它们全部保存在 1 个服务器上。
我目前的策略是我正在使用 /etc/hosts 将绑定到 a.myapp.com 的任何请求定向回本地主机,并且它对应用程序 A 运行良好。我想对 [=41 做类似的事情=]:7002 但端口不同,据我所知,我无法设置主机文件来更改端口。
在 ubuntu 中将绑定到 b.myapp.com:7002 的网络请求转发回 127.0.0.1:7001 上的单个应用程序服务器 运行 的最简单方法是什么。我是否使用像 nginx 这样的 Web 代理,是否使用端口转发等?我有点 linux 菜鸟所以要温柔。我的主要驱动力是保持资源最少。 nginx 可能会占用更多资源,但从长远来看可能会派上用场,因此可以选择。
原来是使用 nginx 和主机文件的组合的简单解决方案。
1).将两个域添加到 /etc/host 文件
- 127.0.0.1a.myapp.com
- 127.0.0.1b.myapp.com
2).在 nginx.config
的 http 部分下安装 nginx 并定义一个服务器(反向代理) server {
listen 7002;
#listen 7003; in future I can add N number ports for nginx to listen on
#listen 7004; in future I can add N number ports for nginx to listen on
location / {
proxy_pass http://127.0.0.1:7001/;
}
}
结果是:
- 当我转到 a.myapp.com:7001 时,hosts 文件强制它解析为 127.0.0.1:7001
- 当我转到 b.myapp.com:7002 时,主机文件将其解析为 127.0.0.1:7002
- nginx 正在侦听 127.0.0.1:7002 并充当 127.0.0.1:7001 的反向代理
- 将来我可以让相同的服务器将端口 7003/7004 上的请求重定向到端口 7001