使用代理服务器在Golang应用程序之间切换
问题描述:
我有一台装有CentOS的服务器,在那里我至少会运行4个Golang应用程序,它们中的每一个都是不同的网站,我应该可以在浏览器中使用域/子域如下:使用代理服务器在Golang应用程序之间切换
- dev00.mysite.com
- dev01.mysite.com
- dev02.mysite.com
- dev03.mysite.com
因此,我需要配置某种软件,将请求重定向到正确的Golang进程。每个站点将运行在不同的端口上,例如,如果有人打电话给dev00.mysite.com,我应该能够将该请求发送到dev00站点的过程(这是用于开发porpouses而不是生产)。所以,在这里我开始相信我读的时候需要Nginx或者Caddy,但是我没有任何经验。 有人可以确认这是解决这个问题的方法吗?我在哪里可以找到任何重定向到Golang应用程序的服务器的配置示例?
而且,未来如果在同一台服务器上运行的域有很多(确实很多),哪台服务器更好?谁高负荷更好?
答
是,Nginx的可以解决你的问题:
- 使用去程或球童的标准库启动Web服务器。
- 重定向请求使用Nginx的到Go应用程序:
例Nginx的配置:
server {
listen 80;
server_name dev00.mysite.com;
...
location/{
proxy_pass http://localhost:8000;
...
}
}
server {
listen 80;
server_name dev01.mysite.com;
...
location/{
proxy_pass http://localhost:8001;
...
}
}
非常感谢你! –