我很困惑。
如果我设置了反向代理服务器,这是否意味着我需要第二台计算机?或者两个服务器(例如,nginx 作为反向代理服务器,apache 作为 Web 服务器)可以在同一台计算机和不同端口上运行吗?
例如这张照片!
在我看来有 4 台计算机(每台服务器一台)?
答案1
几年前一位老师对我说过:“服务器是一个过程” :-)
两台服务器可以在同一台计算机上以不同的端口/IP 运行。
例如,你可以将 apache 设置为
Listen 127.0.0.1:8080
然后 nginx 指向它
server {
listen 80;
location / {
proxy_pass http://127.0.0.1:8080/;
}
}
请注意,以上是伪代码。
答案2
看这里有关在 apache 中配置反向代理的良好介绍。
由于网站是由 IP:端口组合定义的,因此没有什么可以阻止您在一台机器上运行多个实例或虚拟主机,其中一个实例指向或代理另一个实例。