前端之家收集整理的这篇文章主要介绍了
Rsync通过PHP exec()与SSH密码ssh登录,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我通过
PHP exec()运行命令:它不工作.但是如果我使用bash,它运行完美.任何想法可能是什么问题?我在想,也许它正在执行rsync作为apache,不允许ssh
登录.
exec('rsync -au /var/www/html/f1/ user@000.000.000.000:/var/www/html/f2/');
PHP通常在Apache下运行在mod_
PHP下.通常,Apache作为自己的
用户帐户运行,独立于使用服务器的真实世界人士.
所以,在用户帐户的主目录下存储无密码SSH密钥的〜/ .ssh文件在Apache内部不可用,因为它没有你的homedir.即使Apache共享了您的主目录,它仍然无权读取这些文件.
原文链接:https://www.f2er.com/linux/393920.html