vue的部署IIS后,当我们进入到某个路由之后,按F5刷新页面会出现404错误:

vue的单页应用部署后,当我们进入到某个路由之后,按F5刷新页面会出现404错误:

IIS下部署后的解决方案一般是使用 URLRewrite
首先要安装URLRewrite 下载地址

准备一个简单的vue项目只包含路由功能 (安装了vue-router cnpm i -S vue-router)

image.png

 

main.js

 

import Vue from 'vue'
import App from './App.vue'
import router from './router/routes'
Vue.config.productionTip = false

new Vue({
  router,
  render: h => h(App),
}).$mount('#app')

HelloWorld.vue是创建时vue自带的组件
另外的About.vue和Home.vue是建的很简单的组件,只在template中加入了点内容
About.vue

 

<template>
    <div>
        <h2>我是关于我们页</h2>
    </div>
</template>

<script>
    export default {
        
    }
</script>

Home.vue

 

<template>
    <div>
        <h2>我是主页</h2>
    </div>
</template>

<script>
    export default {
        
    }
</script>

router/routes.js

 

import Vue from 'vue'
import VueRouter from 'vue-router'
import HelloWorld from '../components/HelloWorld'
import Home from '../components/Home'
import About from '../components/About'

Vue.use(VueRouter)

const routes=[
    {path:'/',component:Home},
    {path:'/about',component:About},
    {path:'/hello',component:HelloWorld}
]

const router = new VueRouter({
    mode: 'history',
    routes
})

export default router

App.vue也是作了点修改加了 <router-view />

 

<template>
  <div id="app">
    <img alt="Vue logo" src="./assets/logo.png">
    <p>
      <!-- 使用 router-link 组件来导航. -->
      <!-- 通过传入 `to` 属性指定链接. -->
      <!-- <router-link> 默认会被渲染成一个 `<a>` 标签 -->
      <router-link to="/">主页</router-link>&nbsp;
      <router-link to="/about">关于我们页</router-link>&nbsp;
      <router-link to="/hello">Hello Vue</router-link>
    </p>
    <router-view />
  </div>
</template>

<script>

export default {
  name: 'app'
}
</script>

<style>
#app {
  font-family: 'Avenir', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

项目搭建好后,构建: npm run build,接着发布到IIS

image.png


现在已经可以打开浏览站点了,但是例如浏览到 http://localhost:8088/about F5刷新页面会出404错误

image.png

 

最开始的时候安装了URLRewrite,
现在在IIS上添加重写规则

image.png


这一步后,选择右上角的添加规则

image.png

 

image.png

 

image.png

 

image.png


填写完毕后,点击右侧的应用即可
现在在 http://localhost:8088/about路由下F5刷新就不会404了

作者:漫漫江雪
链接:https://www.jianshu.com/p/7cc266438f09
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值