클라이언트에 파일을 업로드하는 것은 웹 개발에서 자주 발생하는 시나리오입니다. 여기서는 자세히 설명하지 않겠습니다. 여기서 자세히 설명하고 싶은 것은 서버 측에서 다른 서버에 파일을 업로드하는 방법입니다.
이 시나리오는 사용자가
한 서버에서 다른 서버로 업로드한 이미지를 업로드하는 등 여러 서버에서 리소스를 동기화해야 할 때 자주 발생합니다.
사실 서버측에서 파일을 업로드하는 것은 어렵지 않습니다. PHP의 컬_init()을 사용하면 됩니다.
<?php require_once $_SERVER ['DOCUMENT_ROOT'].'/hosts.php';//放置多台服务器的IP $img_path = $_SERVER ['DOCUMENT_ROOT'].'/upload/test.jpg';//图片的保存路径 $file = array("company_logo"=>'@'.$img_path);//文件路径,前面要加@,表明是文件上传. foreach($hosts as $host) { $curl = curl_init(); //处理上传图片的URL,与客户端上传到服务器的原理是一样的 curl_setopt($curl,CURLOPT_URL,'http://'.$host.'/upload.php'); curl_setopt($curl,CURLOPT_POST,1); curl_setopt($curl,CURLOPT_POSTFIELDS,$file); curl_setopt($curl,CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl,CURLOPT_HEADER,0); curl_setopt($curl,CURLOPT_SSL_VERIFYPEER, FALSE); $result = curl_exec($curl); //$result 获取页面信息 curl_close($curl); } ?>