Codeigniter在应用程序和Web服务器之间拆分

时间:2017-07-14 03:56:42

标签: php codeigniter server

我知道这是一个非常奇怪的问题,但我希望有人可以告诉我如何在两个不同的服务器之间拆分我的Codeigniter应用程序?

我现在想到的解决方案是

Web服务器 - 该模型不会被使用。将使用视图和控制器。控制器将向应用程序服务器发出REST请求,该请求将向其返回json数据并将推送到视图

Application Server - View不会被使用。 Controller是业务逻辑所在的位置,并将与模型进行通信。

我的想法是否正确?

还有另一种使用PHP FPM的方法,但我不确定它是如何工作的。

1 个答案:

答案 0 :(得分:1)

请通过以下解决方案。

在这种情况下,您需要创建REST服务器,其中将发生与数据库相关的所有活动。您可以通过下面提到的链接在codeigniter中实现REST服务器。

https://github.com/chriskacerguis/codeigniter-restserver

在休息服务器中,您的控制器将使用方法处理特定的http操作。例如GETPOSTPUTUPDATE

class Books extends REST_Controller
{
  public function index_get()
  {
    // Display all books
  }

  public function index_post()
  {
    // Create a new book
  }
}

现在在您的视图部分中,您需要实现rest客户端。因此,您可以根据要求提出CRUD操作请求。

https://github.com/philsturgeon/codeigniter-restclient

虽然休息客户的美丽在下面。

// Load the library
$this->load->library('rest');

// Run some setup
$this->rest->initialize($config);

// Pull in an array of tweets
$tweets = $this->rest->get('statuses/user_timeline/'.$username.'.xml');

您可以获得多种格式的回复。例如JsonCSVXML等。

我已经使用了这两个,它的工作非常棒。

如果您在实施过程中需要任何帮助,请告诉我。