我有两台不同的服务器,我需要将发布数据从一台服务器发送到另一台服务器。但有一些问题我将在下面描述。首先,让我描述一下它们:
- 第一个服务器使用 Apache + PHP,在 Linux 上运行。
- 第二台服务器使用 IIS,在 Windows 上运行。已安装 PHP。
现在,这就是我想要做的事情:
- 在我的第一台服务器上,用户填写表单并将其提交到同一服务器中的文件。
- 在该文件中,我将处理用户填写的数据并将我的用户重定向到我的第二台服务器上的页面。此重定向必须与我的数据处理结果一起作为 POST 请求。
- 仍然在我的秒服务器上,我的用户将完成输入他的信用卡信息。然后,我将处理付款。
- 完成付款处理后(在我的 IIS 服务器上),我将用户重定向回我的第一台服务器中的另一个文件,其中包含更多 POST 数据(付款处理结果)。
不过,我真的不知道如何在不“回显”表单并再次提交的情况下重定向我的用户。
我已经对该主题进行了大量阅读,并且设法使我的 apache 使用 cURL 甚至使用stream_context_create
and发送帖子数据stream_get_contents
,并检索结果。不过,我想要做的是重定向我的用户以及发布数据,而不是发送请求并显示结果。
这不是这个问题的重复,因为我的文件与q0987不在同一台服务器上,因此无法将我的数据存储在用户的会话中。
我也意识到我不能使用header
函数来发出请求,因为header
函数只创建响应头。
我没有足够的权限在 IIS 服务器上安装任何库(如 cURL/libcurl)。我无法在我的第一台服务器上处理付款,看到只允许 IIS 访问 VISAnet 库。我也不能把它全部放在我的 IIS 上。
我正在尝试使用 PHP 来实现这一点,但我什至不知道我正在尝试做的事情是否可行。
我不想写下和提交表单,因为它会弄乱我用户的历史记录(和后退按钮)。