我使用Angular 4构建了一个SaaS产品,并集成了Golang REST API,将构建上传到了AWS EC2实例上。我的项目是基于多租户的应用程序,它在商家名称.mystore.com子域名上加载客户仪表板,但一些客户要求提供自定义域名功能,比如他们应该能够在mydomain.com上加载应用程序。
我已经通过在apache2.conf文件中添加以下代码来完成子域名部分,因此所有子域名都从包含Angular应用程序文件的apps文件夹加载。
<VirtualHost *:80>
ServerAlias *.mystore.com
DocumentRoot /var/www/html/apps
<Directory "/var/www/html/apps">
AllowOverride All
Require all Granted
</Directory>
</VirtualHost>
为了实现自定义域名功能,我在管理员中有一个部分可以保存自定义域名,但不确定应该如何实现。
我考虑的可能方法有:
- 创建虚拟主机文件,并在每个商家注册时使用其自定义域名进行更新
- 使用htaccess文件和mod_rewrite来完成它
Shopify可以做到这一点,但不确定他们如何加载特定商家的商店。另一个让我忙于思考的问题是我应该要求更新哪些值:
- 域名注册商上的IP地址
- 名称服务器(不确定对于我的AWS会是什么)
- 根据某些文章的建议要求创建CNAME或A记录