vue项目访问 域名/index.html 空页面问题

很大可能是vue前端没做404页面,在路由不匹配时会跳转到空路由页面。

也可以把所有路由不匹配的网址全部跳转到域名首页。防止出现404或者页面错误。

如果使用docker nginx部署项目,配置文件上会有

复制代码
try_files $uri $uri/ /index.html;
  • 这段配置会尝试匹配请求的URI,如果找不到对应的文件或目录,则重定向到/index.html,让Vue路由接管路由的处理。

那么问题来了/index.html在vue里面是我们的静态文件,如果跳转过去会是空白页面(即app.vue页面)。所以可以直接去修改

复制代码
		location / {
            root   /usr/share/nginx/html;
		  try_files $uri $uri/ @test;
            index  index.html index.htm;
         }
        
		location @test{
           rewrite ^/(.*)$  你的域名;       # 跳转到首页
          }

或者去找到默认的nginx.conf文件或者要映射的配置文件加上(这样只能避免/index.html跳转到域名首页,其他页面例如/index.html----xxx还会是空白页面)

复制代码
if ($request_uri = /index.html) { return 301 你的域名; }

完整的映射配置文件

复制代码
upstream my_server{
  server 你的域名:8080; # 后端server 地址
  keepalive 2000;
}
 
server {
	    listen 80;
	    #填写绑定证书的域名
	    server_name  你的域名, localhost;
	    #把http的域名请求转成https,相当于用户访问http也可以自动跳转到https,避免出现网页提示不安全
	    return 301 https://$host$request_uri; 
    }    
 
server {
        listen  443 ssl;
	    server_name  你的域名.cn; 
	    #证书文件名称
        ssl_certificate_key /etc/ssl/certs/你的域名.key;
        #私钥文件名称 .crt和.pem都可以用
        ssl_certificate /etc/ssl/certs/你的域名.crt; 
        
        ssl_session_timeout 1d;
        ssl_session_cache shared:SSL:50m;
         ssl_session_tickets off;
         
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256;
    ssl_prefer_server_ciphers on;
 

        if ($request_uri = /index.html) {
              return 301 https://你的域名/; 
        }

		location / {
            root   /usr/share/nginx/html;
		  try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }
		
 
 
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
相关推荐
Boop_wu2 分钟前
简单介绍 JSON
java·开发语言
淡忘_cx4 分钟前
使用Jenkins自动化部署vue项目(2.528.2版本)
vue.js·自动化·jenkins
顾北124 分钟前
AI对话应用接口开发全解析:同步接口+SSE流式+智能体+前端对接
前端·人工智能
知识即是力量ol8 分钟前
初识 Kafka(一):分布式流平台的定义、核心优势与架构全景
java·分布式·kafka·消息队列
爱吃生蚝的于勒12 分钟前
【Linux】线程概念(一)
java·linux·运维·服务器·开发语言·数据结构·vim
kong790692813 分钟前
Nginx性能优化
java·nginx·性能优化
Pluchon14 分钟前
硅基计划4.0 算法 简单模拟实现位图&布隆过滤器
java·大数据·开发语言·数据结构·算法·哈希算法
我命由我1234514 分钟前
Java 泛型 - Java 泛型通配符(上界通配符、下界通配符、无界通配符、PECS 原则)
java·开发语言·后端·java-ee·intellij-idea·idea·intellij idea
Seven9715 分钟前
AQS深度探索:以ReentrantLock看Java并发编程的高效实现
java
iDao技术魔方17 分钟前
深入Vue 3响应式系统:为什么嵌套对象修改后界面不更新?
javascript·vue.js·ecmascript