Angular 6-在生产中部署App

时间:2018-07-06 21:52:40

标签: angular deployment

我正在尝试将我的第一个Angular App上传到生产环境中,我已经执行了以下命令:

ng build --prod --build-optimizer

接下来,我将dist文件夹的内容复制到服务器文件夹的根目录中。

我正确地看到了该应用程序,唯一的问题是当我在浏览器中重新加载页面时,它给了我以下错误:

Not Found
The requested document was not found on this server.

在index.html文件中,我以这种方式具有基本标记:

<base href = "/">

这是我的路线文件:

const routes: Routes = [
  { path: '', redirectTo: '/home', pathMatch: 'full' },
  { path: 'home', component: HomeComponent },
  { path: 'writer', component: WriterComponent },
  { path: 'music', component: MusicComponent },
  { path: '404', component: NotFoundComponent},
  { path: '**', redirectTo: '/404'}
];

可能是什么问题?

3 个答案:

答案 0 :(得分:4)

我认为必须在服务器上进行配置。请参考此处:https://angular.io/guide/deployment#routed-apps-must-fallback-to-indexhtml

我不知道您要部署在哪种服务器上。

答案 1 :(得分:0)

使用以下命令获取项目的Exactly文件夹。

ng build --prod --base-href /FOLDER_NAME/

答案 2 :(得分:0)

复制index.html文件并将其粘贴到同一目录中,并将其命名为404.html