我需要使用PHP将一些文件从一台服务器复制到另一台服务器。现在我目前使用PHP FTP功能,这可以,但会导致问题。有没有更好的方法来实现这一目标?
答案 0 :(得分:4)
FTP是一种很好的方法。它处理身份验证,并且native PHP functions可以与FTP一起使用。
答案 1 :(得分:3)
答案 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
等变量。