1
我有一個項目在1337端口上運行sails應用程序,並在3000上作出反應。我該如何將兩個應用程序部署到單個heroku實例?它在1337上運行,在3000上反應。在單個的heroku服務器上啓動+反應?
我有一個項目在1337端口上運行sails應用程序,並在3000上作出反應。我該如何將兩個應用程序部署到單個heroku實例?它在1337上運行,在3000上反應。在單個的heroku服務器上啓動+反應?
你需要整合React和Sails。
React是關於靜態文件(例如HTML,JS和CSS)的。要將React與Sails集成,一個天真的解決方案是將編譯的React文件複製到Sails assets
文件夾中。
以下是我嘗試過的全新Sails應用程序。它只是工作。
config/blueprints.js
更改API前綴。從現在開始,API從http://localhost:1337/<RESOURCE>
更改爲http://localhost:1337/api/<RESOURCE>
。module.exports.blueprints = {
// ...
prefix: '/api',
// ...
}
config/routes.js
。如果它們存在,刪除以下行。這可確保當有人訪問http://localhost:1337
時,Sails將在assets
文件夾內搜索index.html
。'/': {
view: 'homepage'
}
更新的應用程序作出反應的情況下,它消耗由帆的API(請記住,我們改變了API前綴)。還要確保應用程序入口點是index.html
。
編譯您的應用程序做出反應(通過的WebPack或步兵或任何包裝你正在使用的工具)和編譯後的文件複製到帆assets
文件夾。
將Sails應用程序部署到Heroku。
完成!
更好但更乏味的解決方案是將React開發遷移到Sails。我在Google上找到了an example。它可能已過時,因爲上次更新是2016年2月,但您應將其用作參考。