Linux 上的 Phantomjs 返回空的 HTML 源代码



我们想使用 Phantomjs 连接到我们的内部文档系统并打印网站的源代码以供进一步使用。

脚本基本上来自示例:

> var page = require('webpage').create(),
>     system = require('system');
> 
> page.open('https://servername.domain.net/web/topicname?refresh=on',
> function () {
>     console.log(page.content);
>     phantom.exit();  });

我们从 phantomjs 主页下载了二进制包,并将其解压缩到我们的 debian jessie 服务器并执行脚本:

root@servername:/usr/local/share/phantomjs-2.1.1-linux-x86_64/examples# phantomjs script.js --ssl-protocol=any --ignore-ssl-errors=true

不幸的是,我们只得到一个空的 html 源代码:

<html><head></head><body></body></html>

如果我们使用phantomjs的Windows二进制文件在您的一台Windows客户端PC上执行此操作,则它可以顺利运行。

当 phantomjs 脚本从 debian 服务器执行时,apache 访问日志不会显示任何访问。(该错误.log启用调试后至少显示已建立的SSL连接(

我错过了什么吗?

任何反馈不胜感激!

谢谢

这是SSL证书问题。您包含了正确的开关以忽略 SSL 错误,但没有在正确的位置。PhantomJS 设置开关位于脚本路径之前

phantomjs --ssl-protocol=any --ignore-ssl-errors=true script.js

最新更新