用于直接从远程服务器向客户端传输数据的脚本

时间:2016-03-01 02:16:52

标签: php stream remote-server

我希望在远程服务器和客户端之间建立直接连接,其中数据传输由PHP脚本控制。该脚本将负责确定从远程服务器传输到客户端的数据块;我不希望数据通过托管PHP脚本的服务器传输。

基本上,我正在尝试将数据从远程服务器流式传输到客户端,其中传输的数据块由PHP脚本控制。

我看了一下PHP的流函数(http://php.net/manual/en/book.stream.php),但这似乎没有提供解决方案。

PHP是否提供从远程文件中选择特定字节范围的函数,并将其直接传输到客户端?

1 个答案:

答案 0 :(得分:0)

您的问题没有完全指定,但我会假设您有一个典型的PHP部署,即您希望客户端向您的服务器发出http请求,您有一台服务器根据所述请求解释php代码,并且您要做的一些“远程服务器”和http请求并让客户端接收该响应。当你说“直接从远程服务器流数据”时,听起来你希望客户端直接连接远程服务器并控制与PHP的连接,严格来说这是不可能的,但是有很多方法可以解释你说的是可能的。

如果您愿意放松“受PHP脚本要求控制”

您可以通过从您的php脚本发送将在客户端上运行的javascript并且客户端将创建直接连接,使客户端创建与远程服务器的直接连接。在这种情况下,如果远程服务器支持它,您可以使用http内容范围来请求特定的字节范围。例如。 xhr.setRequestHeader('content-range', 'bytes 0-1233/1234'); 参见:

在这种情况下,您无法使用php控制内容范围。您正在使用PHP发送请求内容范围的JavaScript。