Angular Universal,在Firebase上,用于具有静态页面的应用程序?
相关背景:我是个初学者 我目前的申请:Angular Universal,在Firebase上,用于具有静态页面的应用程序?,angular,angular-universal,Angular,Angular Universal,相关背景:我是个初学者 我目前的申请: 角度为7 托管在GitHub页面上 由一个页面(主页——一个计算器)组成,实际上需要角度功能,再加上几个基本上只是静态HTML的页面。(每个这样的页面当前都是一个角度组件。) 我最近才意识到谷歌无法“看到”其他页面上的任何内容。我认为这是因为GitHub页面基本上接受每个请求并重定向到主页,但我的理解可能有缺陷 我已经读了大约一天了,我想我已经了解到: Angular Universal可用于将静态页面呈现为常规HTML,以便Googlebot可以看到它们
感谢您的意见和反馈。经过几天的反复尝试和谷歌搜索,我在这个过程中步履蹒跚。所以我只是想分享一下我所遵循的步骤,以防将来有人遇到这个问题 首先,按照@AlexanderStaroselsky的建议,我与另一家公司建立了主机托管。(我选择了a2hosting,但我没有理由认为它们比其他提供商更好。) 我从本教程中的步骤开始:
然后,我按照这里的步骤创建prerender.ts文件,依此类推:
然后我得到了一个错误:“找不到模块…ngfactory。”所以在搜索之后,我对app.server.module进行了更改,如下所示:
然后,我编辑了tsconfig.server.json,将关于“commonjs”的行包括在这里:
最后,我将dist/browser目录中的所有内容(没有其他内容)上传到主机。(对于a2托管,我将其放在public_html目录中。)Firebase静态托管实际上与GitHub页面没有什么不同。您将无法在Firebase状态主机上运行Angular Universal。您需要一种服务器技术来运行Angular Universal。从技术上讲,您可以使用Firebase函数来运行Angular Universal(YouTube上Firebase有一段关于此的精彩视频)。感谢您回复@AlexanderStaroselsky。我在YouTube上找到了Firebase(以下)关于这个主题的视频,但许多评论表明它不再适用于Angular 6(或更高版本)。不幸的是,我的技能还不足以决定如何根据需要进行修改。但是仅仅知道Firebase函数仍然是我需要的(如果使用Firebase的话)是有帮助的。是的,您可能需要设计一个解决方案,使Angular Universal能够在任何类型的无服务器函数中工作,出于成本和其他问题,您可能无论如何都不想这样做。也就是说,有很多节点或C#应用程序托管解决方案可以让您运行Angular Universal。你考虑过使用Angular Universal的官方示例(节点或C#)并将其托管在其中一个平台上吗?@AlexanderStaroselsky我只关注Firebase,因为我在搜索结果中反复看到了这一点。因此,有节点js托管计划的东西(例如,a2hosting.com)最好设置为“开箱即用”,可以这么说吗?是的。这两种方法都有优点和缺点,但imo使用专用的节点托管解决方案会更简单。