Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在安全模式下从PHP触发预先编写的Shell命令_Php_Shell_Cron_System_Safe Mode - Fatal编程技术网

在安全模式下从PHP触发预先编写的Shell命令

在安全模式下从PHP触发预先编写的Shell命令,php,shell,cron,system,safe-mode,Php,Shell,Cron,System,Safe Mode,我正在使用PHP执行CRON任务。它作为根运行 例如: php -f /my-cron-folder/my-cron-task.php 在某些情况下,我希望在脚本运行结束时重新启动服务器的防火墙(CSF+LFD) 为安全起见,服务器已禁用exec和system 我可以在PHP中创建或删除一个文件,作为后续CRON任务的触发器,在存在时执行该任务,如果不存在则不执行该任务 但这并不是一种非常优雅的方式,特别是因为我不知道PHP任务需要多长时间才能完成(它会有所不同),所以我必须猜测它运行多长时间

我正在使用PHP执行CRON任务。它作为根运行

例如:

php -f /my-cron-folder/my-cron-task.php
在某些情况下,我希望在脚本运行结束时重新启动服务器的防火墙(CSF+LFD)

为安全起见,服务器已禁用
exec
system

我可以在PHP中创建或删除一个文件,作为后续CRON任务的触发器,在存在时执行该任务,如果不存在则不执行该任务

但这并不是一种非常优雅的方式,特别是因为我不知道PHP任务需要多长时间才能完成(它会有所不同),所以我必须猜测它运行多长时间后才能启动文件存在性检查


有更好的建议吗?

当php脚本返回时,您可以使用它发送一个状态代码(带有
exit($status\u code)
),根据值,您可以选择重新启动服务器(带有chain命令:
php-f cron.php&&i\u need\u to\u restart.sh
Alex:警告:出于安全原因,已禁用shell\u exec():(cyrbil-谢谢,这看起来是可能的!