很抱歉混淆了标题,Node.js和Heroku的新手,但试图快速拿起它。
我目前拥有一个域名,我的第一个目标是设置它以便我进入域名,它使用Heroku唤醒并运行Node.js,运行我的web.js,并显示" Hello world"。
我已经通过了this heroku/node.js tutorial,所以我了解如何在本地设置内容,推送到heroku远程,并用它运行我的Node.js服务器(我理解正确吗? )。但是,我无法找到任何关于如何将Node.js文件实际放到外部服务器上的内容(在本例中为我的域),并将Heroku的服务连接到这些文件,允许我的本地计算机与我服务器上的节点进行交互。
如果您有任何教程或页面建议,我会很感激。有点儿的东西,很可能在这里有很多东西。谢谢!
答案 0 :(得分:2)
Heroku应用程序有自己的git存储库。所以,你从本地git目录{her}到goku remote。{/ 1>。{/ 1}
设定:
push
然后每次部署:
git remote add heroku <git://yourherokurepourl.git>
这就是在heroku的服务器上获取node.js文件所需的全部内容。 Heroku跟随git push heroku
作为进程启动器。 foreman
需要项目根目录中名为foreman
的特殊文件。 procfile
具有简单的unix命令来启动每行中的进程:
procfile
所以,当你将项目推送到heroku的git时。它将查找web : npm install && node app.js
并启动那里定义的进程。您可以在此处放置更多命令。最好在本地/开发机器上安装procfile
并使用它进行测试。
在heroku app设置中,您可以将foreman
地址“绑定”到heroku服务器上运行的节点应用程序。您必须在域提供商的设置中执行相同的操作。 DNS现在将请求路由到www.domain.com
到您应用的服务器IP。
在heroku上,配置存在于环境中。 heroku上有很多www.domain.com
可用。您可以通过向process.env.*
提供.env
个文件来进行本地模拟。
最后,在您的node.js代码中,请务必听取foreman
提供的值。
连接服务器
process.env.PORT
模块直接呼叫其他服务器网址。答案 1 :(得分:0)
您正在描述操作两台服务器。一个在Heroku上,一个在“你的域名”上。我怀疑你没有建立连接,你只能让你的域指向你的Heroku服务器。使用您正在使用的heroku网址与您的域名提供商联系,他们可以为您执行此操作。
实际上,他们会将您的域“指向”您的Heroku node.js服务器,并从那里按照您的预期行事。