我们希望使用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服务器并执行脚本:
根@服务器:/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>
如果我们在你的一个Windows客户端pc上使用phantomjs的windows二进制文件执行此操作,它可以顺利运行。
当从debian服务器执行phantomjs脚本时,apache访问日志不会显示任何访问。 (启用调试的error.log显示至少已建立的ssl连接)
我有什么遗失的吗?
感谢任何反馈!
由于
答案 0 :(得分:2)
这是SSL证书问题。您包含了正确的开关以忽略ssl错误,但没有在正确的位置。 PhantomJS设置开关是在脚本路径之前:
phantomjs --ssl-protocol=any --ignore-ssl-errors=true script.js