我正在尝试获取文件并将命令发送到另一台服务器。
我正在尝试执行以下操作:
system('scp root@xxx.xxx.xxx.xxx:/etc/something.conf /tmp/',$ret);
但是文件没有被复制。如果我echo $ret
它输出1.如果我通过SSH登录服务器并执行相同的命令,它就会很好。
可能出现什么问题?
PS:使用存储在服务器中的公钥来访问其他服务器。
答案 0 :(得分:0)
假设您正在使用ssh密钥来执行scp,您需要为运行php的用户添加服务器公钥(通常是ubuntu的'www-data'和CentOS的'apache'的apache用户)< / p>
至于调试,来自Salman A的提示应该是有用的
使用与root不同的用户名(添加一些没有任何权限的用户),这也是一个很好的建议!