Nginx 反向代理。 1个外部IP,2个本地服务器

Nginx reverse proxy. 1 external ip, 2 local servers

我有一个问题希望有人能帮助我。

我有一个指向网络服务器 (Pine64) 的域名。服务器是 运行 一些 php.

现在我想将另一个物理网络服务器连接到同一个域,但作为子域。

两台服务器都是 运行 Debian 和 nginx,php 和强制 ssl。

所以基本上我需要以下内容:

Https://mydomain.name -> Pine64 服务器端口 443 (ssl) https://srv2.mydomain.name -> 第二个本地服务器post 443 (ssl)

可能吗?

到目前为止我找到的所有示例都是针对同一服务器上的虚拟域的

是的,可以通过 nginx。添加两个域并通过代理传递它 you can find more details in here

你只需要像这样一个单独的域配置(考虑到将来的维护), 在 /etc/nginx/sites-enabled/srv2.mydomain.name 中创建一个配置文件,其内容类似于

server {

  listen 80; # or 443 ssl related settings
  server_name srv2.mydomain.name; # note this part
  location / {
  proxy_pass http://127.0.0.1:8000$request_uri; # forward request to the server running on this ip:port
  proxy_set_header Host $host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
  # any other conf part
  }