angular.js - nginx部署 angularjs时的rewrite问题
巴扎黑
巴扎黑 2017-05-15 16:50:12
0
1
578

使用h5+angularjs完成了一个项目
此项目在正式环境上使用nginx做webserver

此项目的入口在微信/微博分享中
由于分享时的项目访问地址中含有’#‘(类似:test.com/#/goods)
’#‘的位置会被微博微信所修改
导致分享后的地址无法正常访问

所以分享时要去掉地址中的’#‘
也就是分享的链接是:test.com/goods

但是项目入口时如果没有#也会异常
此时是否可以通过nginx rewrite test.com/goods 到 test.com/#/goods
这里如何写rewrite

在此请教nginx高手

巴扎黑
巴扎黑

reply all(1)
我想大声告诉你

You can consider using pushState in html5 to remove the # sign.
Inject $locationProvider in the config method, and then set $locationProvider.html5Mode(true). See http://docs.angularjs.cn/api/ng/provider/$locationProvider
This should be possible with nginx

rewrite ^/(.*)$ http://test.com/#/ redirect;

Use 302 jump to change the url. I haven’t tested it myself, you can try it and see

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template