本地主机上 meteor.js 的设置 prerender.io
Settings prerender.io for meteor.js on localhost
1) 我已经安装 运行 应用程序 meteor.js
https://github.com/meteor/simple-todos-react
2) 我已经在应用程序目录附近安装了 prerender
服务器:
git clone https://github.com/prerender/prerender.git
cd prerender
npm install
并设置端口:
export PORT=3050
结束运行
node server.js
3) 我已经安装了模块 prerender-node
:
meteor npm install prerender-node --save
设置环境变量:
export PRERENDER_SERVICE_URL="http://localhost:3050/"
4) 我在 ./server/main.js
中写道:
import { Meteor } from 'meteor/meteor';
import { WebApp } from 'meteor/webapp';
import prerenderIO from 'prerender-node';
Meteor.startup(() => {
prerenderIO.set('host', 'localhost');
prerenderIO.set('protocol', 'http');
prerenderIO.set('port', '3000');
WebApp.connectHandlers.use(prerenderIO);
});
但是当我转到 link view-source:http://localhost:3000/?_escaped_fragment_=
时,我没有看到渲染的 html
。
我看到一个错误:
GET http://localhost:3000/?_escaped_fragment_= 504
我做错了什么?
import prerenderio from 'prerender-node';
Meteor.startup(() => {
const settings = Meteor.settings.PrerenderIO;
if (settings && settings.token && settings.protocol) {
prerenderio.set('prerenderToken', settings.token);
prerenderio.set('protocol', settings.protocol);
prerenderio.set('forwardHeaders', true);
prerenderio.set('afterRender', function afterRender(error) {
if (error) {
console.log('prerenderio error', error); // eslint-disable-line no-console
return;
}
});
WebApp.rawConnectHandlers.use(prerenderio);
}
});
settings.json
{
"PrerenderIO": {
"token": "xxxxxxxxxxxxxx",
"protocol": "http" //https
},
}
获得的配置选项:
import { WebApp } from 'meteor/webapp';
import { Meteor } from 'meteor/meteor';
import prerenderio from 'prerender-node';
Meteor.startup(() => {
prerenderio.set('host', 'localhost:3000');
prerenderio.set('protocol', 'http');
prerenderio.set('forwardHeaders', true);
prerenderio.set('afterRender', function afterRender(error) {
if (error) {
console.log('prerenderio error', error);
return;
}
});
WebApp.rawConnectHandlers.use(prerenderio);
});
1) 我已经安装 运行 应用程序 meteor.js
https://github.com/meteor/simple-todos-react
2) 我已经在应用程序目录附近安装了 prerender
服务器:
git clone https://github.com/prerender/prerender.git
cd prerender
npm install
并设置端口:
export PORT=3050
结束运行
node server.js
3) 我已经安装了模块 prerender-node
:
meteor npm install prerender-node --save
设置环境变量:
export PRERENDER_SERVICE_URL="http://localhost:3050/"
4) 我在 ./server/main.js
中写道:
import { Meteor } from 'meteor/meteor';
import { WebApp } from 'meteor/webapp';
import prerenderIO from 'prerender-node';
Meteor.startup(() => {
prerenderIO.set('host', 'localhost');
prerenderIO.set('protocol', 'http');
prerenderIO.set('port', '3000');
WebApp.connectHandlers.use(prerenderIO);
});
但是当我转到 link view-source:http://localhost:3000/?_escaped_fragment_=
时,我没有看到渲染的 html
。
我看到一个错误:
GET http://localhost:3000/?_escaped_fragment_= 504
我做错了什么?
import prerenderio from 'prerender-node';
Meteor.startup(() => {
const settings = Meteor.settings.PrerenderIO;
if (settings && settings.token && settings.protocol) {
prerenderio.set('prerenderToken', settings.token);
prerenderio.set('protocol', settings.protocol);
prerenderio.set('forwardHeaders', true);
prerenderio.set('afterRender', function afterRender(error) {
if (error) {
console.log('prerenderio error', error); // eslint-disable-line no-console
return;
}
});
WebApp.rawConnectHandlers.use(prerenderio);
}
});
settings.json
{
"PrerenderIO": {
"token": "xxxxxxxxxxxxxx",
"protocol": "http" //https
},
}
获得的配置选项:
import { WebApp } from 'meteor/webapp';
import { Meteor } from 'meteor/meteor';
import prerenderio from 'prerender-node';
Meteor.startup(() => {
prerenderio.set('host', 'localhost:3000');
prerenderio.set('protocol', 'http');
prerenderio.set('forwardHeaders', true);
prerenderio.set('afterRender', function afterRender(error) {
if (error) {
console.log('prerenderio error', error);
return;
}
});
WebApp.rawConnectHandlers.use(prerenderio);
});