如何托管angular 2个网站?

how to host angular 2 website?

如何托管angular 2个网站?

我是 angular 2 的新手,我制作了一个没有后端的简单网站。

我想知道当我尝试直接打开 index.html 文件时,它打开时出错。

但是在命令 "npm start" 之后它工作正常,它在计算机上运行本地服务器。

那么,如何在简单的托管网站(不是专用服务器..!)上托管此网站?

我认为托管站点会自动找到 index.html 文件,但问题是,index.html 没有 "npm start" 命令就无法启动。

我是否必须在服务器上为此启动一个进程?

请指导我。

您可以使用 heroku 来部署您的解决方案:

https://www.heroku.com

使用以下简单步骤在 Firebase 上托管您的 Angular 2 应用程序: 首先使用 Angular CLI 创建一个项目。在此处获取更多信息 https://cli.angular.io/

第 1 步:构建您的应用程序

运行 下面的 cmd 构建

ng build --prod

第 2 步:创建 FireBase 项目并安装 Firebase CLI

https://console.firebase.google.com/ 打开 Firebase 控制台并创建一个新的 Firebase 项目。

安装 Firebase 命令行工具运行:

npm install -g firebase-tools

步骤 3:部署到 FireBase

运行 使用以下 firebase cmd 登录:

firebase login

它将打开浏览器并要求您进行身份验证。使用您的 Firebase 帐户登录。之后您可以关闭浏览器 window。在命令行上,您将收到已成功执行登录的消息。

现在 运行 下面的命令:

firebase init

首先,系统会询问您要使用哪些 Firebase 客户端功能。您应该 select 选项托管:配置和部署 Firebase 托管站点。接下来,Firebase 客户端将询问要使用哪个文件夹进行部署。输入 dist。这很重要,因为这是我们的生产构建存储的位置。

接下来的问题是询问这个应用程序是否是单页应用程序以及它是否应该将所有 URL 重写为 index.html。在我们的例子中,我们需要回答是。

最后一个问题是 Firebase 是否应该覆盖文件 index.html。这个问题的答案是否定的。

现在,运行 要部署的命令如下:

firebase deploy

Firebase 将提供一个 URL,您可以使用它来在线访问您的应用程序。

[更新]

现在,在您成功部署应用程序后,如果您想进行一些更改并将代码部署到同一 URL。遵循相同的程序。但请确保您指向的是您的项目。

要列出所有项目,请使用此命令:

firebase list

要将项目设为当前项目,请使用:

firebase use <project_id>

你可以使用 http-server :

http-server 是一个简单的零配置命令行 http 服务器。它对于生产用途来说足够强大,但它又足够简单和易于破解,可以用于测试、本地开发和学习。

npm install http-server -g

通过以下方式构建项目:

ng build -app

然后在项目目录中使用:

http-server dist/ -p 3000 // -p is port 

在浏览器上 http://localhost:3000 or http://your-ip:3000

如果您有一个简单的托管包,答案是您不能

普通托管服务提供商的托管包不提供此功能。

要么您需要 'special provider',例如 Google Firebase,要么您需要拥有自己的(虚拟)机器(在托管服务提供商处)。