वहाँ स्क्रिप्ट को रोकने के लिए कोई तरीका है? मैं एक साझा होस्टिंग में हूं, इसलिए मेरे पास कमांड प्रॉम्प्ट तक पहुंच नहीं है, और मुझे पीआईडी नहीं पता है।
फिर नहीं।
लेकिन क्या आप सुनिश्चित हैं कि आपके पास कोई खोल पहुंच नहीं है? PHP के माध्यम से भी? यदि आप करते हैं, तो आप की कोशिश कर सकते ....
<?php
print `ps -ef | grep php`;
... और आप देखेंगे कि उसके बाद से इस प्रक्रिया की पहचान कर सकते हैं अगर ....
<?php
$pid=12345; // for example.
print `kill -9 $pid`;
और आप की जरूरत नहीं है, भले ही पहुँच खोल आदेशों को चलाने के लिए, आप ..../proc में पीआईडी (एक Linux सिस्टम पर) खोजने के लिए और POSIX एक्सटेंशन का उपयोग कर इसे समाप्त करने के लिए सक्षम हो सकता है
<?php
$ps=glob('/proc/[0-9]*');
foreach ($ps as $p) {
if (is_dir($p) && is_writeable($p)) {
print "proc= " . basename($p);
$cmd=file_get_contents($p . '/cmdline');
print "/" . file_get_contents($p . '/cmdline');
if (preg_match('/(php).*(myscript.php)/',$cmd)) {
posix_kill(basename($p), SIGKILL);
print " xxxxx....";
break;
}
print "\n";
}
}
आप SSH उपयोग कर सकते है बदलने से पहले तय हो गई? '/ Bin/ps' चलाने के लिए और पता लगाने के लिए अपमानजनक प्रक्रिया के पीआईडी, तो [' posix_kill'] (http://ca.php.net/manual/en/function.posix-kill.php –
उपयोग 'system') इसे मारने के लिए। हो सकता है कि आपके साझा होस्टिंग प्रदाता के पास कुछ प्रकार का नियंत्रण कक्ष हो जिसमें प्रक्रिया प्रबंधन उपकरण हों। –
यदि यह एकवचन घटना है, तो आपको केवल समर्थन कॉल करना चाहिए ... – Olaf