网上搜索Angular项目编译后部署到Nginx中的方法,多数文章都介绍了需要在Nginx中的配置文件的location中特别指定跳转到首页来避免刷新导致404的问题,那么完整的server代码是:
server { listen 80; server_name 192.168.190.131; #sendfile on; #charset koi8-r; access_log /var/log/nginx/host.access.log main; location / { root /chanchaw/app/angular; index index.html index.html; try_files $uri $uri/ /index.html; } error_page 404 /index.html; location = /index.html { root /chanchaw/app/angular; }}
上面的server_name后面是CentOS7.3的IP地址,后面的location中要特别注意:try_files $uri $uri/ /index.html,这里是防止浏览器中刷新导致404,那么重点来了,部署到Nginx后浏览器测试出现下面的问题:
明明index.html和js文件是在同一个目录下为什么会找不到?chrome这样,firefox也这样,好吧,换换IE试试吧。
解决
原来chrome和firefox都会自动将http转换为https 来发出请求,而自己试验用的CentOS是安装在虚拟机中的,压根就没想过要部署ssl,由于ie不会转换协议,所以 ie上测试是没问题的。
以上就是小编给大家介绍的Nginx中部署Angular项目遇到的坑巨坑,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!