502 Bad Gateway once running php on command line

I have just installed:

  • FreeBSD 10.2
  • Nginx 1.8.1
  • PHP 5.5.33

Nginx works fine with PHP that the web sites seems ok to run php pages.
However, once I run php on command line (e.g. php -v), the web site will
get
“502 Bad Gateway” error, and I find the nginx error log as below:

[error] 714#0: *3 upstream prematurely closed connection while reading
response header from
upstream, client: , server: www.____.com, request: “GET /
HTTP/1.1”,
upstream: “fastcgi://unix:/
var/run/php5-fpm.sock:”, host: "
"

I have tried to use either sock or port, but the problem still exist…
any
idea about what’s wrong? thanks.

“php -v” shows below:
PHP 5.5.33 (cli) (built: Mar 15 2016 01:22:17)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
with XCache v3.2.0, Copyright (c) 2005-2014, by mOo
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend
Technologies
with XCache Cacher v3.2.0, Copyright (c) 2005-2014, by mOo

Posted at Nginx Forum:

Hi,

What is the exact call you’re trying to do?

  • Lucas

hi, on command line, when I type: php

or

php -v

after pressing [Enter] key, then the “502 Bad Gateway” will occur at
once.

It is very strange, because I always think php command line should not
affect the php-fpm…

Posted at Nginx Forum:

Eventually I find what went wrong, it should be caused by both Zend
OPcache
and XCache are installed, they may conflict each other in this case,
once
I’ve removed the XCache, it works fine, the php command line would no
longer
cause the php-fpm error.

XCache should be unnecessary when OPcache is running.

Posted at Nginx Forum:

yes, agree.

Thanks Lucas.

Posted at Nginx Forum:

When issuing php directly from the command-line, you don’t even go
through nginx.
php from the command-line relies on the php-cli which isn’t talking to
your nginx process nor php-fpm.