3

我在 ebs 上创建了我的 node.js 应用程序,其中包含两个子路由器“foo”和“bar”,目前可通过“example.com/foo”和“example.com/bar”访问。

我希望 ebs 的反向代理将子域“foo.example.com”和“bar.example.com”转发到这些子文件夹......

即“foo.example.com/xxx”到“example.com/foo/xxx”“bar.example.com/yyy”到“example.com/bar/yyy”等。

我知道如何配置 nginx 来做到这一点,但我不知道如何访问 EBS 上的 nginx 配置文件......

一年多前有人问过完全相同的问题,但似乎 EBS 已经发展了很多,因为......只是想知道这种事情现在是否可行。

4

1 回答 1

6

您可以使用配置文件来自定义您的 nginx 配置。

  1. .ebextensions在源包的顶层创建一个目录。
  2. 创建一个配置文件,/your_app/.ebextensions/custom.config. 在配置文件中键入以下内容以配置转发设置。(我创建了一个要点
files:
  "/etc/nginx/conf.d/custom.conf" :
    content: |
      server {
        listen 8080;
        server_name foo.chief-motp.com;
        location / {
          proxy_pass  http://nodejs/foo/;
          proxy_set_header   Connection "";
          proxy_http_version 1.1;
          proxy_set_header        Host            $host;
          proxy_set_header        X-Real-IP       $remote_addr;
          proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
         }
         location /public {
           alias /var/app/current/public;
         }
      }
      server {
        listen 8080;
        server_name bar.chief-motp.com;
        location / {
          proxy_pass  http://nodejs/bar/;
          proxy_set_header   Connection "";
          proxy_http_version 1.1;
          proxy_set_header        Host            $host;
          proxy_set_header        X-Real-IP       $remote_addr;
          proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        location /public {
          alias /var/app/current/public;
        }
      }

另一种自定义 Elastic Beanstalk EC2 实例的方法是使用自定义 AMI。更多信息可以参考我的帖子

于 2013-08-29T18:09:00.173 回答