将文件保存到远程域

时间:2011-04-16 18:54:02

标签: php file-upload file-permissions remote-server

我想在一台服务器上托管上传脚本,但要将上传的文件存储到远程服务器。

目前我有一个脚本可以保存到我服务器上的可写文件夹中。这工作正常,但当我将其更改为绝对链接(即“http://www.somedomain.com/uploads/”而不是“/ uploads /”)时,它表示该文件夹不可写。该文件夹的权限是0777.我做错了什么?

最终我想将上传保存到远程服务器(即“http://www.someotherdomain.com/uploads/”)。任何见解?我如何使用密码权限来消除任何人将文件上传到此文件夹的可能性?

提前致谢!

3 个答案:

答案 0 :(得分:1)

以下是一个选项:

暂时将文件上传到您的服务器。上传到localhost后,使用curl将文件上传到远程服务器。

对于密码保护,您可以使用access token,每1小时左右到期。将access_token作为变量传递给您的上传请求。远程服务器在接受上载之前验证access_token是否存在且未过期。

设置访问的用户名和密码。如果访问令牌不存在或已过期,请使用curl将用户名和密码发布到远程服务器,这将验证用户名和密码是否有效并返回新的access_token。

答案 1 :(得分:0)

答案 2 :(得分:0)

我想我曾遇到过这个问题。如果我理解你的问题没有错,我的问题是这样的。我在服务器A中创建upload.php并在服务器A中接收,假设文件是​​receive.php(它正常工作)。然后我将接收文件(receive.php)上传到服务器B,并修改服务器A中的upload.php(upload.php目的地是服务器B)。

这是问题吗?如果这样的问题,可能是防火墙问题。但我使用它们的服务器是centos。我当时做的是,我关闭selinux,并使用firehol来调整我的centos中的防火墙。然后它工作正常。

其他选项,您仍然可以在服务器A中接收文件。然后在您的接收中通过ftp将文件传输到服务器B,但我认为这需要更多的努力。因为你需要调整ftp配置(使用pem / pkk是ftp,sftp还是sftp)。