2011-09-23 10 views
14

に無限ループを停止私は、単純な無限ループforはこのように見えるがあります。それは私のサーバー上で実行しているリモートサーバのPHP

set_time_limit (0); 
for (;;) 
{ 
    ... //Doing some stuff including to write to a file 
    sleep(300); 
} 

。 (共有ホスティングアカウント)

どのように地球を止めることができますか?

+1

トリックを行うプロセスのコマンドラインを殺す。 Linuxで動く? http://linux.about.com/library/cmd/blcmdl_kill.htm –

+0

ファイルを削除しますか? – Mob

答えて

13

プロセスを強制終了します。あなたはssh経由でコンソールへのアクセスを得ることができ、あなたのサーバーは、Linux上で動作すると仮定すると:

ps -ef | grep php // to get a list of php-processes 

kill [process-id] // kill the process by process-id 
+0

SSH経由でどうすればアクセスできますか?サーバーはlinux/Debianです。 – LouwHopley

+0

http://www.putty.org/ - ダウンロードするだけで、サーバのip-address、ユーザ名とパスワードを入力してください:voilà! – oezi

+0

@oeziまた、サーバー上でスクリプトをループしていました。私は[Amazon ec2](http://aws.amazon.com/ec2/)サーバについて話しています。このスクリプトを終了するには 'ps -x'と' sudo kill [proces_id] 'を使います。ちょうど... ... –

1

あなたのホスティングサービスに連絡し、あなたのスクリプトを殺すように依頼する場合があります。おそらく実行アクセス権やsshアクセス権を持っていない可能性があります。次回は無限ループを作成してプログラムを終了する可能性があります。

+0

それを殺す何らかの方法を置くことをお勧めします。ファイルを読み込んで読み込みます。 「偽」と読むと死ぬ。 – LouwHopley

1

SSH経由でログインしていましたが、プロセスを終了しようとしましたが、うまくいかなかった可能性があります。

いつでも再起動apacheが最後の手段です。それはそれを修正します;-)

関連する問題