首頁 >後端開發 >php教程 >如何使用nginx或php将请求转发到另一个地址

如何使用nginx或php将请求转发到另一个地址

WBOY
WBOY原創
2016-06-06 20:06:252465瀏覽

我有两台web服务器,想实现这样一个功能:

  1. 用户请求服务器A(http://aaa);

  2. 服务器A 收到请求 取到用户请求的数据,请求服务器B(http://bbb);

  3. 服务器B 返回数据给服务器A;

  4. 服务器A 返回数据给用户。

请问服务器A需要做什么设置才能完成这种需求。

如果不行的话,能不能用php实现,有没有demo?

回复内容:

我有两台web服务器,想实现这样一个功能:

  1. 用户请求服务器A(http://aaa);

  2. 服务器A 收到请求 取到用户请求的数据,请求服务器B(http://bbb);

  3. 服务器B 返回数据给服务器A;

  4. 服务器A 返回数据给用户。

请问服务器A需要做什么设置才能完成这种需求。

如果不行的话,能不能用php实现,有没有demo?

nginx proxy_pass

https://www.baidu.com/s?wd=nginx+proxy_pass

<code>server {
    listen  80;
    server_name  aaa;

    location / {
        proxy_pass http://bbb;
    }
}</code>

举个PHP栗子。
aaa.com page1.php
比如发送一个get请求

<code>
<?php $data = file_get_contents('http://bbb.com/page2.php?id=2&key=kkk');
print_r($data);
?>
</code>

bbb.com page2.php

<code>
<?php $id = $_GET['id];
echo json_encode(array('status'=>0,'message'=>$id));
?>
</code>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn