Is using shell commands from PHP/CGI bad practice?
Are shell commands considered a legitimate programming interface? Specifical开发者_如何学JAVAly, is there anything wrong with executing bash shell commands on a linux application server from PHP pages or CGI files? Does this introduce efficiency or security issues?
Thanks
Sometimes OK, but...
Sometimes it's the best way to solve a problem.
But possible issues are:
Security
Look out for code injection if you aren't doing taint checking.
Performance
Running shell commands will involving forking the PHP interpreter and executing complex and relatively slow system calls. This is OK for a lightly loaded server but won't work for a busy site.
Synchronization
Ensuring that things happen in the right order avoids well-known problems called lost updates, dirty reads, and incorrect summaries. While shell commands are not by themselves a cause of any of these things, running them asynchronously can be, and increasing the complexity of your system will make it harder to analyze.
If secure application and server, no.
精彩评论