我开发的网站只有这个:
echo php_sapi_name();
现在来自CMD,我运行了这个:
php -d display_errors=1 -r "echo file_get_contents('http://site');"
它返回apache2handler
而不是cli
。为什么呢?
答案 0 :(得分:1)
运行以下命令时:
php -d display_errors=1 -r "echo file_get_contents('http://site');"
您实际上是从Apache加载文件(使用HTTP协议)。这就是为什么你得到apache2handler
而不是cli
。 PHP脚本在Apache下运行。这与通过某些浏览器访问http://site
时获得的结果相同。在这种情况下,您的PHP客户端充当您的浏览器。
如果您需要从PHP客户端运行脚本,则必须从命令行以这种方式调用它:
php file.php
您需要从文件系统访问该文件。使用上面的命令,我假设你和脚本在同一个目录中。