background image

  为什么要这样做?这似乎是多余的,不是吗?

 —— 

不是这样的

您需要这样考虑,您可

 

以通过 exec()   

或 passthru() 运行备份脚本,然后根据返回代码执行一些行为。如果出现错

误,您可以将其记录到错误日志或数据库中,或发送一封警告电子邮件。如果脚本成功,
您可以将原始的输出转储到数据库(例如,rsync 有一个详尽(verbose)模式,对随后诊断问
题十分有用)。
  安全

 

  我们在这里简要讨论一下安全性:如果您接受用户输入并将信息传递到 shell,那么

 

最好过滤用户输入。删除您认为有害的命令和不允许的内容,比如 sudo(作为超级用户运
行)  

或 rm(删除)。事实上,您可能不希望用户发送开放的请求,而是让他们从列表中选择。

  例如,您运行一个接受文件列表作为参数的传输程序,您应该通过一系列复选框列

 

出所有文件。用户可以选择和取消选择文件,并通过单击 Submit 

 

激活 rsync shell 脚本。用

户不能自己输入文件或使用正则表达式。
  本文从两个方面介绍的 PHP shell 脚本的用法,希望能给你带来帮助。