使用PHP将文件从一台服务器复制到另一台服务器最好的方法是什么

时间:2010-02-08 18:23:57

标签: php

我需要使用PHP将一些文件从一台服务器复制到另一台服务器。现在我目前使用PHP FTP功能,这可以,但会导致问题。有没有更好的方法来实现这一目标?

3 个答案:

答案 0 :(得分:4)

FTP是一种很好的方法。它处理身份验证,并且native PHP functions可以与FTP一起使用。

答案 1 :(得分:3)

我建议rsyncsftp

但是,如果仅限于PHP,请尝试ssh2_sftp

必填 - pecl ssh2 package

使用正确配置的ssh公钥,您甚至不需要提供密码

答案 2 :(得分:2)

您最好的选择通常是 rsync ,特别是如果您需要复制目录结构。它不是严格意义上的PHP方法,但您可以使用shell_exec()或反引号语法调用:

`rsync -acz /files/to/copy/ user@remotehost:/target/dir/`

您需要使用公钥身份验证,但有很多教程。如果您知道将进入远程服务器的公钥文件的位置,您可以使用-e开关:

`rsync -acze 'ssh -i /path/to/your.key' /files...`

查看the rsync website了解详情。

PHP的反引号语法适用于变量插值,因此您可以在语法中使用$source$target等变量。