【发布时间】:2018-08-05 10:35:35
【问题描述】:
使用 1and1 linux 共享主机,
我已经安装了:
PHP 版本 7.0.27 PHP PhantomJS 2.1.1
PHP PhantomJS 所有值都为空
每当我提出请求时:
$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);
}
我有一堆空值,而 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
}
它只是从不返回内容
请帮忙
编辑:日志:
string(1413) "2018-02-25T22:31:25 [DEBUG] CookieJar - 创建并将 将 cookie 存储在:“cookies.txt”1 0x1b67967 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x1b67967] 2 0x1baaaf5 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x1baaaf5] 3 0x198c463 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x198c463] 4 0x1ab3982 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x1ab3982] 5 0x79abb9 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x79abb9] 6 0x76b6f9 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x76b6f9] 7 0x750a5d /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x750a5d] 8 0x41cd89 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x41cd89] 9 0x41f5c4 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x41f5c4] 10 0x415b86 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x415b86] 11 0x2b1fc0917b45 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x2b1fc0917b45] 12 0x4176a1 /kunden/homepages/0/d220355082/htdocs/bitme/core/composer/bin/phantomjs() [0x4176a1] PhantomJS 已崩溃。请阅读错误报告指南 在http://phantomjs.org/bug-reporting.html 并提交错误报告。 分段错误" int(0) NULL
编辑:
如果我用最新下载替换 phantomJS,
我得到 libicui18n.so.55 缺少依赖项
如何使用 Composer 安装它?
请注意,这需要安装在共享主机上,因此我在机器上没有 root/sudo 访问权限
感谢所有帮助。
【问题讨论】:
-
您请求的 url 不返回 200,而是返回 302。您可以使用 chrome 检查器和网络选项卡进行检查。如果您测试 302 状态,一切正常。
-
其实返回int(0)
-
$request = $client->getMessageFactory()->createRequest('http://luclaverdure.com', 'GET'); $response = $client->getMessageFactory()->createResponse(); $client->send($request, $response); var_dump($request->getStatus()); // 302 if($response->getStatus() === 302) { var_dump($response->getContent()); die; }返回您的主页 html。您确定没有将主机设置设置为不同的 IP 或类似的东西吗? -
如果你看上面的响应代码:["status"]=> NULL
-
尝试了其他网址,我仍然得到 0 作为状态
标签: php phantomjs composer-php shared-hosting php-phantomjs