尝试为SEO安装spiderable和phantomjs。
首先是我添加了蜘蛛侠。
meteor add spiderable
工作正常。安装。当我尝试使用像http://localhost:3000/?_escaped_fragment_=
这样的GET参数打开一个URL时,会出现服务器错误 - 缺少phantomjs。
所以我添加了phantomjs智能包。
mrt add phantomjs
当我使用GET参数重新打开我的项目URL时,没有服务器错误,也没有客户端JS错误。但是这个网站的源代码是:
<!DOCTYPE html><html class=" js cssanimations csstransitions"><head>
<link rel="stylesheet" href="/1c2c36f3a0bb39970171882896d7e916b597a938.css">
[A feeeeeew breaks! About 150 breaks - dunno why.]
<title>My title</title>
</head></html>
所以这个网站只是白色的。没有内容。
尝试了一些参数和空参数。
例如: 在铁路由器中我设置了/ jobs路径。所以我试过了:
http://localhost:3000/?_escaped_fragment_=jobs
iron-router用于作业的纯HTML模板。没有帮助者或其他人。只是为了测试spiderable包。
没有错误 - 不在客户端而不在服务器上。有什么遗失? Dunno我的代码错了。我还使用了这个列表:http://www.meteorpedia.com/read/spiderable
故障排除...此列表中的所有内容都很好。
信息: 我还在我的操作系统上安装了phantomjs!
$ phantomjs -v // returns 1.9.7
答案 0 :(得分:1)
试试这个:
mrt remove phantomjs
npm install -g phantomjs
答案 1 :(得分:1)
我唯一缺少的是缺少<meta>
标签。在文件的头部应该有
<meta name="fragment" content="!">
看看Manuel Shoebel的博客可能有所帮助。
答案 2 :(得分:0)
通常的罪魁祸首是spiderable可能正在等待某些订阅以完成返回数据,而那些订阅实际上根本不发送数据。您需要查看项目中使用的软件包以及代码,以查看可能是罪魁祸首的原因。另一个原因可能是PhantomJS无法连接到您的服务器,如果您在负载平衡反向代理之后运行,通常会发生这种情况。
使用?_escaped_fragment
进行测试需要多长时间才能加载页面?这将允许您区分这两种情况。
对于其他可能的原因,请查看以下线索:
根据我的经验,导致这些错误的一个程序包是Observatory。