在生产

时间:2016-06-14 09:56:11

标签: angularjs node.js heroku single-page-application prerender

我一直在考虑将prerender用于我的Angular应用程序,并且在考虑如何在生产中实现它时遇到一些麻烦,更具体地说,是Heroku。

因此,我从文档中了解到,在localhost上,我可以在localhost:9000上运行我的应用,然后在另一个终端中运行prerender的实例,例如localhost:9001。然后使用prerender-node中间件我可以说以下内容:

app.use(require('prerender-node').set('prerenderServiceUrl', 'http://localhost:9001'));

我不明白是如何在prerender上运行localhost:9000服务的?我真的不想设置一个全新的服务器来运行prerender。我对单独服务器的最大顾虑是如何在生产中调用它?我是否必须将网址设置为my-prerender-server.com,这需要购买该域名?这可能看起来很愚蠢,但我怎样才能保持简洁美观?如果可能的话,我想从一个应用程序运行它...

任何想法或提示?

1 个答案:

答案 0 :(得分:0)

我使用prerender和node-prerender来处理我的angular 1 app的抓取工具。

您需要让两台服务器侦听不同的域/端口。最简单的方法是创建一个像prerender.company.com这样的子域,因为它是免费的,应该很容易在你的dns中配置。

您可以使用类似vhost的内容在单个进程中运行这两个服务器,但运行两个单独的服务器更容易,更简单。