我有两台服务器。 第一个(本地)是具有脚本的服务器 第二个(远程)是仅上载文件的服务器(仅用于存储)。
现在我对如何上传文件感到困惑,我有两种方法,我不知道其中最好的一种。
方式:
首先将文件上传到本地服务器并进行全部安全保护 操作(检查文件大小,文件类型等),然后上传 再次到第二台服务器(远程服务器)。
直接将文件上传到第二台服务器(远程服务器), 并在那里进行所有检查和安全操作,然后将文件信息发送到第一个服务器(本地)以将信息存储到数据库中。
我已经尝试应用第二种方式,通过将文件直接发送到第二台服务器(远程服务器),然后一切正常后,第二台服务器(远程服务器)发送给第一台服务器(本地)的所有信息curl上传的文件。
例如:
以下代码存储在第二个服务器(远程服务器)的php文件中。
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://localServer/script/receiveReques.php");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($ch, CURLOPT_TIMEOUT, 2);
curl_setopt($ch, CURLOPT_POST, 3);
curl_setopt($ch, CURLOPT_POSTFIELDS, array('fileName' => 'filename.zip', 'size' => 1000, 'path'=> 'http://remoteserver.com/files/filenmae.zip'));
curl_exec($ch);
curl_close($ch);
但问题是我不知道如何获取发送的信息。
我的问题摘要是:
答案 0 :(得分:3)
你有
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
您需要做的就是使用它返回的数据
$data = curl_exec($ch);
所有数据现在都在$data