配置Nginx解决Angular 4刷新路由重新加载报404错误

Angular重新加载页面会报404,原因可分为三种:

1、路由不存在

2、Angular使用html5模式的路由,需要把所有路由的请求映射到index.html

配置Nginx如下:

location / {
    root /var/html;
    try_files $uri $uri/ /index.html =404;
  }

其中root配置的是html文件所在的文件夹

3、Angular使用hash的路由(即用#的URL来路由),base配置有误

<base href=".">

需要改为

<base href="/">

版权声明:著作权归作者所有。

相关推荐

nginx配置Basic认证

最近在搭建kibana时,发现kibana是没有提供认证功能,所以想到给它加一个认证,最简单的就是basic auth认证。下面记录下nginx配置basic认证的过程。添加Basic Auth认证需要先创建密码文件,这里使用htpasswd。如果没有找到htpasswd命令,可以先安装httpd-tools。安装httpd-toolsyum install 

nginx配置gzip压缩

配置在nginx.conf的http节点,添加gzip配置如下:http {   gzip on;   gzip_min_length 1k;   gzip_buffers 4 16k;   gzip_comp_level 2;   gzip_types text/plain text/c

Angular4 监听路由URL的变化

Angular 4检测路由变化,可以使用router.events来监听:支持的事件类型:NavigationStart:导航开始NavigationEnd:导航结束NavigationCancel:取消导航NavigationError:导航出错RoutesRecoginzed:路由已认证在判断事件类型需要导入对应的事件类型,如:import { Router,&n

Nginx使用upstream配置负载均衡

nginx主要使用upstream配置多个服务器,设置负载均衡策略。基本配置upstreamupstream example.com{    server host1;    server host2;  }  serverserver {     listen 90;

Nginx配置WebSocket

Nginx配置WebSocketserver {     listen       80;     server_name  example.com;     location&