【问题标题】:How to deploy angular 5 project in Laravel?如何在 Laravel 中部署 Angular 5 项目?
【发布时间】:2018-06-25 09:50:15
【问题描述】:
如何在 Laravel 中部署 Angular 5 项目的构建?我正在 Laravel 中部署 Angular 的构建文件,它工作正常,但是当我在路由到任何页面后刷新时显示 404。原因是它将使用该 URL 检查后端的控制器。我试图通过使用哈希策略来避免这个问题,但我认为这不是一个好主意。所以请帮我解决这个问题。
【问题讨论】:
-
-
-
为此,您只需在根目录中添加 .htaccess 即可应用 URL 重写规则,请参阅此链接 github.com/angular/angular/issues/19009,或者如果您不想添加 .htaccess 文件,那么您有像这样RouterModule.forRoot(rootRouterConfig, { useHash: true }) 使您的路由器能够连接到 HashLocationStrategy
标签:
php
angular
laravel
angular5
【解决方案1】:
如Angular issue 中所述,使用以下.htaccess 文件在刷新时加载相同的角度页面。
<IfModule mod_rewrite.c>
RewriteEngine on
# Don't rewrite files or directories
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# Rewrite everything else to index.html
RewriteRule ^ index.html [L]
</IfModule>
如果您的 index.html 文件不在您的根文件夹中,那么您必须将 index.html 的路径更改为您的 index.html 所在的位置,
就像我的index.html 在resources/views/ 中,那么我将把规则写在.htaccess 中:
RewriteRule ^ resources/views/index.html [L]