通过 HTML 按钮 Rsync (PHP/Apache)
Rsync through HTML Button (PHP/Apache)
我有一个带有 table 的网站,其中列出了我的目录中带有复选框的所有文件。使用复选框,我可以 select 特定文件夹,然后点击 html
提交按钮。该按钮使用 file action
访问 php
脚本到 运行 rsync
。
我的 php 脚本如下所示:
<?php
$folders = $_POST['comp'];
$N = count($folders);
echo("You selected the folders: ");
for ($i=0; $i < $N; $i++)
{
echo($folders[$i]." ");
$rsync = "rsync -ruvv -e ssh /cygdrive/c/users/Owner/pictures/".$folders[$i]." blah@192.168.1.10:/var/files/ImageSync";
shell_exec($rsync);
}
?>
我收到 Apache 错误:'rsync' is not recognized as an internal or external command,
operable program or batch file.
我应该如何解决这个问题才能 运行 Rsync
?我只是在学习 php,所以任何解释都会有所帮助。我也已经设置了 ssh 密钥对。
您应该在系统中找到 rsync 的位置,并在调用时指定它的完整路径。
$rsync = "/absolute/path/to/rsync ...";
可能您应该为 Apache 在您的系统中运行 的用户调整 PATH 环境变量,这样它(PATH)将包含您的 rsync
, ssh
等等一个 exe.
我有一个带有 table 的网站,其中列出了我的目录中带有复选框的所有文件。使用复选框,我可以 select 特定文件夹,然后点击 html
提交按钮。该按钮使用 file action
访问 php
脚本到 运行 rsync
。
我的 php 脚本如下所示:
<?php
$folders = $_POST['comp'];
$N = count($folders);
echo("You selected the folders: ");
for ($i=0; $i < $N; $i++)
{
echo($folders[$i]." ");
$rsync = "rsync -ruvv -e ssh /cygdrive/c/users/Owner/pictures/".$folders[$i]." blah@192.168.1.10:/var/files/ImageSync";
shell_exec($rsync);
}
?>
我收到 Apache 错误:'rsync' is not recognized as an internal or external command,
operable program or batch file.
我应该如何解决这个问题才能 运行 Rsync
?我只是在学习 php,所以任何解释都会有所帮助。我也已经设置了 ssh 密钥对。
您应该在系统中找到 rsync 的位置,并在调用时指定它的完整路径。
$rsync = "/absolute/path/to/rsync ...";
可能您应该为 Apache 在您的系统中运行 的用户调整 PATH 环境变量,这样它(PATH)将包含您的 rsync
, ssh
等等一个 exe.