检测 PHP 二进制路径 - 奇怪的情况
Detecting PHP binary path - strange situation
我的 phpinfo 输出中没有 PHP_BINARY 或 PHP_BINDIR。服务器上有 3 个版本 - 5.3 5.6 7.0 和 Virtualmin。默认值为 5.6 - 它可以很好地处理 http 请求。但我还需要 运行 这个版本的 cronjobs,但是
# /usr/bin/php -v
PHP 5.3.3 (cli) (built: Mar 22 2017 12:27:09)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
另一次尝试:
whereis php
php: /usr/bin/php /etc/php.ini /etc/php.d /usr/lib64/php /usr/share/php
/usr/share/man/man1/php.1.gz
这是我的 phpinfo 的文本。
https://pastebin.com/T0WSwJ1c
请帮忙!
已添加 - 我将 php 模式从 fastcgi 更改为 Apache 处理程序,并且再次 - 在 5.6 phpinfo 输出中没有 PHP_BINARY 或 PHP_BINDIR。我搜索了所有 php 类文件
find / -name 'php*' > php.txt
结果在这里
https://justpaste.it/1bwap
我找到了 cgi 二进制文件(?)/home/***/cgi-bin/php5.6.cgi
(用户名被感知)
好的 return 5.6 版本但是如何 运行 cron 呢?!
# /home/****/cgi-bin/php5.6.cgi ./t.php
PHP Warning: Unknown: Filename cannot be empty in Unknown on line 0
Status: 404 Not Found
X-Powered-By: PHP/5.6.25
Content-type: text/html; charset=UTF-8
No input file specified.
好吧,在 GNU+Linux 系统和类似系统(例如,Freebsd)中,您可以在 /bin
或 /usr/bin
中找到所有可执行文件,因此 php
命令是/usr/bin/php
.
另外,为了模拟结果,您可以在 whereis
命令中使用 -b
选项以找到 php 可执行文件。
找出答案的一个好方法是通过 shell:
执行
/usr/bin/php -v
最后我在 /opt/rh/rh-php56/root/usr/bin/php
找到了它
当我发布 find / -name 'php*' > php.txt
时,我删除了一堆 /opt/rh/something.. 结果,认为它们完全无关紧要。
我的 phpinfo 输出中没有 PHP_BINARY 或 PHP_BINDIR。服务器上有 3 个版本 - 5.3 5.6 7.0 和 Virtualmin。默认值为 5.6 - 它可以很好地处理 http 请求。但我还需要 运行 这个版本的 cronjobs,但是
# /usr/bin/php -v
PHP 5.3.3 (cli) (built: Mar 22 2017 12:27:09)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
另一次尝试:
whereis php
php: /usr/bin/php /etc/php.ini /etc/php.d /usr/lib64/php /usr/share/php
/usr/share/man/man1/php.1.gz
这是我的 phpinfo 的文本。 https://pastebin.com/T0WSwJ1c
请帮忙!
已添加 - 我将 php 模式从 fastcgi 更改为 Apache 处理程序,并且再次 - 在 5.6 phpinfo 输出中没有 PHP_BINARY 或 PHP_BINDIR。我搜索了所有 php 类文件
find / -name 'php*' > php.txt
结果在这里 https://justpaste.it/1bwap
我找到了 cgi 二进制文件(?)/home/***/cgi-bin/php5.6.cgi
(用户名被感知)
好的 return 5.6 版本但是如何 运行 cron 呢?!
# /home/****/cgi-bin/php5.6.cgi ./t.php
PHP Warning: Unknown: Filename cannot be empty in Unknown on line 0
Status: 404 Not Found
X-Powered-By: PHP/5.6.25
Content-type: text/html; charset=UTF-8
No input file specified.
好吧,在 GNU+Linux 系统和类似系统(例如,Freebsd)中,您可以在 /bin
或 /usr/bin
中找到所有可执行文件,因此 php
命令是/usr/bin/php
.
另外,为了模拟结果,您可以在 whereis
命令中使用 -b
选项以找到 php 可执行文件。
找出答案的一个好方法是通过 shell:
执行/usr/bin/php -v
最后我在 /opt/rh/rh-php56/root/usr/bin/php
当我发布 find / -name 'php*' > php.txt
时,我删除了一堆 /opt/rh/something.. 结果,认为它们完全无关紧要。