使用1and1 Linux共享托管,

我已经安装了:

PHP版本7.0.27
PHP PhantomJS 2.1.1

PHP PhantomJS所有值均为null

每当我通过以下方式提出请求时:

$client = Client::getInstance();

$client->getEngine()->setPath($main_path.'core/composer/bin/phantomjs');
$client->getEngine()->addOption('--ssl-protocol=any');
$client->getEngine()->addOption('--ignore-ssl-errors=true');
$client->getEngine()->addOption('--web-security=false');
$client->getEngine()->addOption('--debug=true');
$client->getEngine()->addOption('--local-to-remote-url-access=true');

$request = $client->getMessageFactory()->createRequest("http://luclaverdure.com");
$response = $client->getMessageFactory()->createResponse();

$client->send($request, $response);
var_dump($request);
var_dump($response);

if($response->getStatus() === 200) {
    $resp = $response->getContent();
    var_dump($resp);
}

我有一堆null值,并且phantomJS无法处理URL ...

要求:
object(JonnyW\PhantomJs\Http\Request)#113 (12) {
    ["type":protected]=> NULL
    ["headers":protected]=> array(0) {}
    ["settings":protected]=>
      array(1) {
        ["resourceTimeout"]=>
        int(5000)
      }
    ["cookies":protected]=>
      array(2) {
        ["add"]=>
        array(0) {
        }
        ["delete"]=>
        array(0) {
        }
      }
    ["data":protected]=>
      array(0) {
      }
    ["url":protected]=>
      string(59) "http://luclaverdure.com"
    ["method":protected]=>
      string(3) "GET"
    ["timeout":protected]=>
      NULL
    ["delay":protected]=>
      int(0)
    ["viewportWidth":protected]=>
      int(0)
    ["viewportHeight":protected]=>
      int(0)
    ["bodyStyles":protected]=>
      array(0) {
      }
}

回复:
object(JonnyW\PhantomJs\Http\Response)#263 (9) {
    ["headers"]=>
      NULL
    ["status"]=>
      NULL
    ["content"]=>
      NULL
    ["contentType"]=>
      NULL
    ["url"]=>
      NULL
    ["redirectURL"]=>
      NULL
    ["time"]=>
      NULL
    ["console"]=>
      NULL
    ["cookies"]=>
      NULL
}

它永远不会返回内容

请帮忙

编辑:日志:



编辑:

如果我用最新的下载替换phantomJS,

我得到libicui18n.so.55缺少依赖项

如何使用Composer安装它?

请注意,这需要安装在共享主机上,因此我在该计算机上没有root/sudo访问权限

感谢所有帮助。

最佳答案

检查您的系统是否运行SELinux(可以使用sestatus进行检查)---它可以(并且将)尝试损害PhantomJS,看起来就像这样。

请查看phantomjs.org/troubleshooting上的“ SELinux ”部分,以获取官方解决方案。

关于php - 在共享主机上安装PhantomJS(1and1),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48980574/

10-15 22:01