【发布时间】:2016-12-14 23:45:12
【问题描述】:
我有一个需要帮助的问题(我以前从未遇到过这个问题,也找不到任何以前的相关问题)。
php 中的应用程序托管在名为 01.example.com, 02.example.com 的不同服务器上
现在,有许多客户端使用这个应用程序(用 PHP 编写的软件即服务),每个客户端都有自己的数据库托管在一个特定的服务器上 - 客户端 A 数据库存在于 01.example.com 上,客户端 B 数据库存在于02.example.com(哪个客户端属于哪个服务器存储在一个共享数据库中)
我想创建一个带有 http://HOST/api/resources (http://01.example.com/api/resources, http://02.example.com/api/resources) 等 URL 的 REST API
如何使 api URL/URI 独立于主机,例如 (http://example.com/api/resources)?
我能想到几个解决方案 -
- 收到第一个请求时,从共享数据库中获取客户端的服务器位置,然后发送重定向。
- 或者在使用像
http://01.example.com/api/resources这样的REST 时要求客户端使用用户服务器特定的URL/URI。 (但是当客户端迁移到不同的服务器时,他们的代码会中断,直到他们将 URL 更改为新服务器)
这听起来可能令人困惑(对我来说也是如此),我发现很难为这种情况设计解决方案。
【问题讨论】:
-
您能想到的两个选项是唯一可能的选项...