PHP脚本没有解释就被杀死了

Rob*_*93K 3 php bash putty

我用以下方式启动我的PHP脚本:

bash  
cd 'path'   
php -f 'scriptname'.php
Run Code Online (Sandbox Code Playgroud)

php脚本运行时没有输出.

过了一段时间,php脚本响应:

Killed 
Run Code Online (Sandbox Code Playgroud)

我的想法是它达到了memory_limit: ini_set('memory_limit', '40960M');

增加内存限制似乎可以解决问题,但它只会增加优势.

Killed句话究竟是什么意思?

Nan*_*nne 7

你的过程被杀了.可能有很多原因,但很容易丢弃一些更明显的原因.

  • php限制:如果你遇到php限制,你会在日志文件中得到一个错误,也可能在命令行上.这通常不打印'杀死'
  • 会话已结束问题:如果你仍然有你的会话,那么你的会话很明显没有结束,所以无视所有的nohup和&东西

如果您的服务器缺乏资源(没有内存,没有交换),内核可能会终止您的进程.这可能是正在发生的事情.

无论如何:你的过程正在发出一个应该停止的信号.通常只有几个"事物"可以做到这一点

  • 你的帐户(例如你杀了这个过程)
  • 管理员用户(例如root)
  • 当内核真正需要你自己的记忆时.
  • 也许是一些自动化过程,例如,如果你住在共享服务器上,而你占用的资源份额超过你的份额.

参考文献:谁"杀死"了我的过程以及为什么?