【问题标题】:Pointing EC2 instance to a directory on a domain将 EC2 实例指向域上的目录
【发布时间】:2016-07-26 03:41:46
【问题描述】:

有 2 个 EC2 实例正在运行:

  1. Windows Server 2012 - ASP.NET 应用程序
  2. Linux - Wordpress 博客

ASP 应用程序在domain.com/

如何将 Wordpress 指向 domain.com/blog/ 而不是 blog.domain.com

您可以使用任何 AWS 功能。

【问题讨论】:

  • 为什么要投反对票?至少解释一下哪里出了问题或指出正确的方向。
  • 问题不清楚。尝试再次阅读您自己的问题并定义“指向”的含义。
  • 尽管缺乏严谨性,但我认为这个问题已经足够清楚了。投票赞成。

标签: amazon-web-services amazon-ec2 dns amazon-route53 amazon-vpc


【解决方案1】:

我认为最具成本效益的方法是使用您已有的资源。基本思想是将您的 Route53 记录指向其中一个 EC2 实例,并使用“某物”(我将稍后解释)将请求从该 EC2 重定向到另一个。它可以是从 Windows 到 Linux 或其他方式。例如:

假设您将域 (domain.com) 指向 Linux EC2 实例。让我们将其命名为EC2-Linux。安装前面提到的“东西”,我建议在这个框中nginx。如果你不熟悉 ngnix,check out their how-to's

nginx 启动并运行后,创建一个带有重定向规则的配置文件,例如(注意:我还没有测试过这个 conf 文件):

server {
    listen 80;
    server_name domain.com;

    # Redirect blog request to itself
    location /blog {
        proxy_pass http://localhost:80/$uri;
        proxy_set_header Host $host:$server_port;
    }

    # Redirect the rest of the traffic to the other EC2 instance
    location /* {
        proxy_pass http://<EC2-Win IP>:80/$uri;
        proxy_set_header Host $host:$server_port;
    }
}

您当然需要微调 nginx 和您的应用程序以使其正常工作,但我认为这个想法可以回答您的问题,而无需向您的堆栈添加更多 AWS 资源。

问候

【讨论】:

    【解决方案2】:

    您可以使用 /blog/ 源创建 CloudFront 分发到 Linux 服务器,并且默认为 ASP.Net,这意味着除 /blog/ 之外的所有内容都将转到 ASP.Net。

    【讨论】:

    猜你喜欢
    • 2014-01-02
    • 2021-01-29
    • 2021-05-10
    • 1970-01-01
    • 2017-12-10
    • 2015-12-17
    • 2019-03-19
    • 1970-01-01
    • 2017-12-14
    相关资源
    最近更新 更多