是否使用PHP / CGI的shell命令不好的做法?

时间:2010-12-26 23:38:29

标签: php linux bash shell shell-exec

shell命令是否被视为合法的编程接口?具体来说,从PHP页面或CGI文件在Linux应用程序服务器上执行bash shell命令有什么问题吗?这是否会引入效率或安全问题?

由于

2 个答案:

答案 0 :(得分:6)

有时可以,但......


有时这是解决问题的最佳方式。

但可能的问题是:

安全

如果您没有code injection,请留意taint checking

效果

运行shell命令将涉及forking PHP解释器并执行复杂且相对较慢system calls.这对于负载较轻的服务器是可以的,但不适用于繁忙的站点。

同步

确保以正确的顺序发生事情可以避免众所周知的问题,称为丢失更新脏读错误摘要。虽然shell命令本身不是导致这些问题的原因,但是异步运行它们会增加系统的复杂性,这会使分析变得更加困难。

答案 1 :(得分:0)

如果安全的应用程序和服务器,没有。