如何从 example.com 移动到 app.example.com
Posted
技术标签:
【中文标题】如何从 example.com 移动到 app.example.com【英文标题】:How to move from example.com to app.example.com 【发布时间】:2021-06-11 11:55:46 【问题描述】:我有一个 Laravel 应用程序在 bitnami 的 AWS LightSail LAMP 堆栈上运行。该站点可从 example.com 访问。现在我想将该应用 从 example.com 移动到 app.example.com 。 example.com 稍后将用于服务于公司简介/产品组合营销目的。
当前代码库位于 /opt/bitnami/apache/htdocs/ 目录下,而不是任何子目录下。
我的查询是:
如何实现上述域结构,以便将来在必要时添加更多子域? 是否需要对 DNS 记录进行任何更改?【问题讨论】:
【参考方案1】:Bitnami 工程师在这里!
默认情况下,服务器被配置为在访问/opt/bitnami/apache/htdocs/
目录时分发它。
话虽如此,我通常喜欢为主应用程序(或在您的情况下为主域)保留该路径并为子应用程序设置另一个目录,/opt/bitnami/projects/PROJECT_NAME
(我将使用 sub ,代表子应用?)。
$ sudo mkdir -p /opt/bitnami/project/sub/htdocs
# Add the code of your sub site here
$ sudo cat | sudo tee index.html > /dev/null << EOF
<!DOCTYPE html>
<html>
<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>
</html>
EOF
为了添加更多子域,您需要创建新的VirtualHosts
(在/opt/bitnami/apache/conf/vhosts/
中)来处理与这些特定子域匹配的请求。该堆栈附带VirtualHosts
的示例文件,因此您只需根据需要复制和定制它们:
$ cd /opt/bitnami/apache/conf/vhosts/
$ sudo cp sample-vhost.conf.disabled sub-vhost.conf
$ sudo cp sample-https-vhost.conf.disabled sub-https-vhost.conf
编辑这些文件以设置 ServerAlias
指令以匹配您的子域,您应该准备好了!
$ cat sub-vhost.conf
<VirtualHost 127.0.0.1:80 _default_:80>
ServerAlias sub.myapp.com
...
【讨论】:
遵循本指南能够提供来自 sub.myapp.com 的内容。但现在的问题是,如果从 myapp.com 访问,我会从 sub.myapp.com 看到相同的内容。以上是关于如何从 example.com 移动到 app.example.com的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 nginx 将 example.com 重定向到 example.com/#/?
如何在没有任何用户交互的情况下进行服务器到服务器的文件传输?
从 example.com 重定向到 www.example.com
将请求从 example.com:8000(旧 REST API)转发到 AWS 上的 api.example.com(新 REST API)