【问题标题】:How to upload file using PHP on Synology NAS / FTP Server?如何在 Synology NAS / FTP Server 上使用 PHP 上传文件?
【发布时间】:2018-02-20 09:44:47
【问题描述】:

我想制作一个文件并使用 PHP 将其上传到 Synology NAS。我们的 NAS,它支持 FTP,所以我尝试使用 here 的 ftp_put() 并尝试使用 here 的 curl()。但我仍然无法将文件上传到 NAS。 这两个代码都运行良好,并且没有显示消息错误。

这是我们 Synology NAS 上的目标路径:/DMS/upload-file/

这是我使用 ftp_put() 的简单代码:

$ftp_path = '/DMS/upload-file/'.$_FILES["uploadedfile"]["name"];
$conn_id = ftp_ssl_connect($host,$port);
$login_result = ftp_login ( $conn_id , $username , $password );
$upload = ftp_put($conn_id, $ftp_path, $_FILES["uploadedfile"]["tmp_name"], FTP_ASCII);
print (!$upload) ? $bgalert.'There was a problem while uploading '.$ftp_path.'</p>' : $bgalert.'Upload complete</p>';
ftp_close($conn_id); 

结果总是

上传时出现问题 /DMS/上传文件/文件名.jpg

谁能帮我解决我们的问题?我真的需要你的帮助。 谢谢。

【问题讨论】:

  • 不能用filezilla上传文件吗?
  • @TYPO3User 是的,我可以使用 filezilla 上传文件
  • 你能显示大约$ftp_path 的值和登录结果吗($login_result)

标签: php curl file-upload ftp


【解决方案1】:

你能检查一下这个文件夹的权限 /DMS/upload-file/ 吗?

【讨论】:

  • 所有文件夹有777个权限。
  • 您的 ftp 用户是否有权创建、更新和删除该目录?据我所知,NAS 使用了 acl。
  • 是的,ftp 用户拥有 CRUD 的权限。我试图在 ftp 客户端上使用该帐户作为 filezilla。问题只在 PHP 中。
猜你喜欢
  • 2017-06-21
  • 1970-01-01
  • 1970-01-01
  • 2023-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-21
相关资源
最近更新 更多