Vue History 模式下,有些页面能显示,而有些页面不显示。
我是这样写的:
vue router部分代码示例:
const router = new VueRouter({
mode: 'history',
routes: [{
path: '/a',
name: 'a',
component: a
},{
path: '/ab/ab',
name: 'ab',
component: ab
}]
})
Nginx配置代码如下:
server {
listen 443;
server_name aaa.com;
ssl on;
ssl_certificate crte/***.pem;
ssl_certificate_key crte/***.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
index index.html index.htm;
root /www/server/h5;
error_page 404 /index.html;
location / {
try_files $uri $uri/ /index.html; #vue官网配置例子
}
location /rest/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://***.*.*.***:8009/;
}
}
布置完毕,发现https://aaa.com/a 能访问,而访问https://aaa.com/ab/ab 为空白页面。简单的来说,就是协议域名+一个/的路由能访问,协议域名+含有多个/的路由就访问异常。这是为什么呢?请各位小伙伴来答疑下,谢谢啦。
子路由应该这样写: