繁体   English   中英

如何将图像上传到另一台服务器?

[英]How to upload image to another server?

我想创建一个服务于html内容的应用程序服务器,其中包含指向另一个域上另一个服务器所服务的静态图像的链接。 用户通过应用程序服务器上载图像。

这是我将JPEG文件上传到应用程序服务器的方法:

if(!file_exists("folder_name")) mkdir("folder_name", 0770);
$temp_file = $_FILES['image']['tmp_name'];
$im = imagecreatefromjpeg($temp_file);
$destination = "folder_name/file_name.jpg";
imagejpeg($im, $destination);
imagedestroy($im);

如果我要将文件上传到另一台服务器,代码将如何更改?

添加注意 :如果文件夹不存在,则即时创建文件夹。

主要取决于你可以使用什么。

您可以使用安全的SFTP来完成:

$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

ssh2_scp_send($connection, '/local/filename', '/remote/filename', 0644);

PHP手册在这里: function.ssh2-scp-send.php

或不安全的FTP:

$file = 'somefile.txt';
$remote_file = 'readme.txt';

// set up basic connection
$conn_id = ftp_connect("ftp.example.com");

// login with username and password
$login_result = ftp_login($conn_id, "username", "password");

// upload a file
if (ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) {
 echo "successfully uploaded $file\n";
} else {
 echo "There was a problem while uploading $file\n";
}

// close the connection
ftp_close($conn_id);

PHP手册在这里: function.ftp-put.php

或者您可以使用PHP发送HTTP请求:

这更像是另一台服务器看到的真实Web浏览器行为:

你可以使用socket_connect(); socket_write(); ,我稍后会添加更多相关信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM