同样的代码放在Apache上执行可以执行,在nginx上面就报错了。

百度出来一堆结果貌似都不对,然后只有注释代码->运行程序,一步步找到问题所在

$buffer = [];   这一步报错了

原来是PHP版本问题,PHP数组简写模式是从5.4才开始有的,我wamp上面PHP版本是5.5的、lnmp上边是5.3的。

// 原来的数组写法
$arr = array("key" => "value", "key2" => "value2");
 // 简写形式 
$arr = ["key" => "value", "key2" => "value2"];

nginx 报错  HTTP ERROR 500 (PHP数组简写模式)

 点击此处链接了解更多关于PHP版本的变化  PHP 5.2、5.3、5.4、5.5、5.6 对比以及功能详解

 nginx其他错误参考链接 Nginx Http 500错误解决 (转载)