解决VUE项目IIS部署后接口请求405错误问题(Method Not Allowed)

 更新时间:2025年12月25日 09:20:05   作者:-清欢有味  
通过排查和修改IIS处理程序映射,添加ServerSideIncludeModule模块,解决了StaticFileModule模块报错的问题,最终使得POST请求可以正常访问

VUE项目IIS部署后接口请求405错误

最开始查看接口响应,发现是StaticFileModule 模块报错,网上搜索发现都说是谓词问题,实际我操作其实修改添加POST谓词没有用。

解决方法

添加一个规则,在IIS处理程序映射中或者web.config中直接添加handlers,模块为ServerSideIncludeModule,路径为*.html。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Handle History Mode and custom 404/500" stopProcessing="true">
          <match url="(.*)" />
          <conditions logicalGrouping="MatchAll">
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
          </conditions>
          <action type="Rewrite" url="/" />
        </rule>
      </rules>
    </rewrite>
        <handlers>
            <add name="VuePostByHtml" path="*.html" verb="*" modules="ServerSideIncludeModule" resourceType="Either" />
        </handlers>
  </system.webServer>
</configuration>

如果没有ServerSideIncludeModule模块需要在IIS中安装服务器包含

以下仅作个人纪录

1.打开IIS,找到处理程序映射,把StaticFile请求程序映射里的谓词改成全部,发现并没有用

2.修改.NET管道托管模式发现也不起效果。一直在修改程序映射,发现只要修改了StaticFile模式条目类型就会由继承变成本地。

3.WebDev禁用以及删除重启都无法解决这个问题。

4.在官网看文档发现原因1及原因3都不是我这个情况,最后着重落在原因2,StaticFile这个处理程序上面。

访问 Internet Information Services (IIS) 网站时出现 HTTP 错误 405.0 - Internet Information Services | Microsoft Learn

5.按照上面微软网站给出的方法,想用 ASPClassic 这个程序托管,发现我就没有asp,瞎搞一通没用,把IIS设置回退最初的版本。

6.由于之前StaticFile修改一直没有用,ASPClassic也行不通,想着就自己新建一个映射,仔细看看请求路径在index.html上,POST请求。按照这个逻辑新建一个映射,发现可以正常访问了。

7.回过头检查StaticFile文件没有ServerSideIncludeModule模块,在里面添加这个模块之后就会报错,感觉是继承重名或者.NET模式环境问题,不想再研究了,回退对StaticFile的修改。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue+Element-ui前端实现分页效果

    vue+Element-ui前端实现分页效果

    这篇文章主要为大家详细介绍了vue+Element-ui前端实现分页效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • 详解VUE中v-bind的基本用法

    详解VUE中v-bind的基本用法

    本篇文章主要介绍了详解VUE中v-bind的基本用法 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • Vue实现Header渐隐渐现效果的实例代码

    Vue实现Header渐隐渐现效果的实例代码

    这篇文章主要介绍了Vue实现Header渐隐渐现效果,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • vue cli3 项目中如何使用axios发送post请求

    vue cli3 项目中如何使用axios发送post请求

    这篇文章主要介绍了vue cli3 项目中如何使用axios发送post请求,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • 关于vue利用postcss-pxtorem进行移动端适配的问题

    关于vue利用postcss-pxtorem进行移动端适配的问题

    这篇文章主要介绍了关于vue利用postcss-pxtorem进行移动端适配的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • vue项目打包清除console.log的四种方法总结

    vue项目打包清除console.log的四种方法总结

    大家在项目开发的时候,需要看看一些后端接口返回的结果,会多次使用console.log项目开发完成打包的时候,发现控制台一堆的console.log,非常头疼,下面这篇文章主要给大家介绍了关于vue项目打包清除console.log的四种方法,需要的朋友可以参考下
    2023-04-04
  • Element-UI中<el-cascader />回显失败问题的完美解决

    Element-UI中<el-cascader />回显失败问题的完美解决

    我们在使用el-cascader控件往数据库保存的都是最后一级的数据,那如果再次编辑此条数据时,直接给el-cascader传入最后一级的数据,它是不会自动勾选的,下面这篇文章主要给大家介绍了关于Element-UI中<el-cascader />回显失败问题的完美解决办法,需要的朋友可以参考下
    2023-01-01
  • VueJS事件处理器v-on的使用方法

    VueJS事件处理器v-on的使用方法

    本篇文章主要介绍了VueJS事件处理器v-on的使用方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • Vue组件封装上传图片和视频的示例代码

    Vue组件封装上传图片和视频的示例代码

    这篇文章主要介绍了Vue封装上传图片和视频的组件,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-07-07
  • Vue中$nextTick实现源码解析

    Vue中$nextTick实现源码解析

    这篇文章主要为大家介绍了Vue中$nextTick实现源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10

最新评论