我遇到了一个问题 404 页面未找到 在刷新页面时在生产构建中。
使用 #
构建工作正常路由RouterModule.forRoot(routes, { useHash: true })
.但我想要一条没有 #
的漂亮路线
我的模块看起来像
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
FormsModule,
HttpClientModule,
CoreModule,
AppRoutingModule,
AuthModule
],
providers: [
{
provide: HTTP_INTERCEPTORS,
useClass: HttpInterceptorService,
multi: true
}
],
bootstrap: [AppComponent]
})
最佳答案
原因 404 未找到 在页面刷新时显示的是所有 Angular 路由都应该通过 index.html 文件提供。
您可以通过添加具有以下内容的 .htaccess 文件(在 index.html 所在的同一目录中)来解决此问题。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.html [L]
</IfModule>
请点击以下链接了解有关 的更多详细信息将生产构建部署到 Apache :
https://github.com/mgechev/angular-seed/wiki/Deploying-prod-build-to-Apache-2
关于Angular 6 build,刷新页面时未找到错误 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51707010/