项目基于Angular CLI,一个命令行界面工具搭建
在项目开发完成之后,在打包发布地方遇到了问题,之前一直使用angularjs开发,至于新的Angular 4却是还未接触,这次的项目,选择了Angular 4,随之而来的便是一个跨越式的变化。
相比于angularjs直接引用文件发布而言,Angular 4的打包发布却是没有那么一清二白了
从官方文档中,了解到的是以nodejs环境发布,不过总感觉这种发布方式比较繁杂,于是在网上百般查询,终于找到一种简易的发布方式。
通过命令行
ng build --prod --aot
会生成dist文件夹,将dist文件夹中的文件,直接上传到服务器便可访问,
本以为这样子就可以了,但是很快就发现一个新的问题,通过域名,直接访问,无论进入哪个路由页面,都没有问题,但是当刷新页面的时候,却是会返回一个404的错误页面,
错误的原因,应该是,路由解析错误的问题,
通过查询,找到一个解决方案,在服务器中添加一个重定向文件(.htaccess),即可,文件内容如下
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 to allow html5 state links
RewriteRule ^ index.html [L]