通过端口80将不同的域请求提供给多个服务器(即Apache / Node)

我真的希望能够在同一个Raspberry Pi(运行Debian for Pi)上运行Node和Apache(或者也许是nginx)。

以这种方式,Apache可以为同一IP上的多个站点设置虚拟主机,并通过查看哪个请求来确定要载入哪一个虚拟主机,我想用多个不同的服务器做同样的事情。

是否有可能在端口80上运行某种代理,并在其他端口上运行apache / node / others并将特定域请求路由到它们?

Nginx非常擅长。 例如:

server { listen 80; server_name www.example.com location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_pass http://127.0.0.1:81; proxy_read_timeout 4m; } location ~ /\.ht { deny all; } access_log /var/log/nginx/foobar/access.log; client_max_body_size 25m; } 

你也可以添加这样的东西(通过让nginx提供图片来卸载底层的apache):

 location ~ /media/(.*)$ { alias /var/www/foobar/media/$1; expires 7d; }