0

我正在尝试创建一个具有以下内容的网站

  1. 网络访问
  2. Android/iPhone 移动应用程序访问 API
  3. 移动网络

我希望以上三个都可以访问相同的 webroot 和图像资源。网址将是

  1. 网站
  2. api.site.com
  3. m.site.com

可能是 touch.site.com 上的替代触摸屏站点

如何让 CakePHP 在一次安装中处理所有这些?

4

1 回答 1

3

最好的办法是使用前缀。在内部,您的 URL 将被路由/api/controller/action到一个名为api_action. 您可以根据前缀 ( $this->params['prefix']) 在 beforeFilters 中切换布局/身份验证/任何逻辑。

要将其作为子域处理,您只需进行一些内部 .htaccess 重写以将 URL 从更改api.example.com/为您的example.com/api前缀。要正确反向路由链接,您最好实现自定义RouteClass。查看默认的CakeRoute类以获得指导。

于 2011-11-04T09:00:20.077 回答