Если у вас есть root-доступ на php-сервере, если вы работаете в linux, вы можете просто выполнить команду bash, используя `: *
echo `ps -A`;
, чтобы получить список всех запущенных процессов на компьютере., затем, если вы знаете, что пользователь apache использует для выполнения сценариев, вы можете затем повторить ps -u user
;
После определения правильного PID вы можете уничтожить его с помощью:
echo `kill PID`;
ex
echo `kill 1023`;
или
// Я не знаю, работает ли это именно так eval ('echo kill '.$_GET['PID'].'
;');
Все это выполняется вдругой php-скрипт, созданный специально для того, чтобы убить другие скрипты по команде.
Вы можете использовать AJAX для запроса такого рода заданий из скрипта, о котором упоминалось.
Также вы можете сделать php-файлнапишите клиенту его собственный PID (Google для функции записи, он очень похож на c), а затем javascript может отправить этот PID непосредственно в этот сценарий-убийцу, чтобы дать команду остановки выполнения для некоторого сценария.
РЕДАКТИРОВАТЬ 1:
вы можете запуститьPID скрипта с этой функцией:
getmypid();
, и вы можете сохранить его в файле или, что лучше, в переменной сеанса
$_SESSION[__FILE__] = getmypid();
и, чтобы остановить запуск файла, вы можете вызватьстраница вроде этой (killer.php):
<?php
// security verifications, etc
/*
*/
session_start();
$f = $_SESSION[$_GET['file']];
echo `kill $f`;
?>
Хотя это опасно.
Я не знаю точных команд для выполнения, или если у вас есть или нет такой контроль, или даже если вы находитесь в системе Linux.Если хочешь, я могу немного изучить его.
С уважением,