关闭 URL# 号
AngularJS对于默认的情况,是不启动HTML5模式的,URL中会包括一个#号,用来区别是AngularJS管理的路径还是WebServer管理的路径。
比如:下面的带#号的URL,是AngularJS管理的路径。
http://www.baoai.co/
http://www.baoai.co/#/
http://www.baoai.co/#/web/app
http://onbook.me/#/about
这种体验其实是不太友好的,AngularJS框架提供了一种HTML5模式的路由,可以直接去掉#号。
通过设置$locationProvider.html5Mode(true)就行了。
解决URL刷新问题
编辑nginx的配置文件,增加try_files配置。
server {
set $htdocs /baoai/baoaifront;
listen 80;
server_name onbook.me;
location / {
root $htdocs;
try_files $uri $uri/ /index.html =404;
}
}
这样,静态网站就搞定了,没有麻烦的#号了,可以直接访问和任意页面的刷新。