解決VUE項(xiàng)目IIS部署后接口請(qǐng)求405錯(cuò)誤問(wèn)題(Method Not Allowed)
VUE項(xiàng)目IIS部署后接口請(qǐng)求405錯(cuò)誤
最開(kāi)始查看接口響應(yīng),發(fā)現(xiàn)是StaticFileModule 模塊報(bào)錯(cuò),網(wǎng)上搜索發(fā)現(xiàn)都說(shuō)是謂詞問(wèn)題,實(shí)際我操作其實(shí)修改添加POST謂詞沒(méi)有用。

解決方法
添加一個(gè)規(guī)則,在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>如果沒(méi)有ServerSideIncludeModule模塊需要在IIS中安裝服務(wù)器包含

以下僅作個(gè)人紀(jì)錄
1.打開(kāi)IIS,找到處理程序映射,把StaticFile請(qǐng)求程序映射里的謂詞改成全部,發(fā)現(xiàn)并沒(méi)有用
2.修改.NET管道托管模式發(fā)現(xiàn)也不起效果。一直在修改程序映射,發(fā)現(xiàn)只要修改了StaticFile模式條目類型就會(huì)由繼承變成本地。
3.WebDev禁用以及刪除重啟都無(wú)法解決這個(gè)問(wèn)題。
4.在官網(wǎng)看文檔發(fā)現(xiàn)原因1及原因3都不是我這個(gè)情況,最后著重落在原因2,StaticFile這個(gè)處理程序上面。

5.按照上面微軟網(wǎng)站給出的方法,想用 ASPClassic 這個(gè)程序托管,發(fā)現(xiàn)我就沒(méi)有asp,瞎搞一通沒(méi)用,把IIS設(shè)置回退最初的版本。
6.由于之前StaticFile修改一直沒(méi)有用,ASPClassic也行不通,想著就自己新建一個(gè)映射,仔細(xì)看看請(qǐng)求路徑在index.html上,POST請(qǐng)求。按照這個(gè)邏輯新建一個(gè)映射,發(fā)現(xiàn)可以正常訪問(wèn)了。
7.回過(guò)頭檢查StaticFile文件沒(méi)有ServerSideIncludeModule模塊,在里面添加這個(gè)模塊之后就會(huì)報(bào)錯(cuò),感覺(jué)是繼承重名或者.NET模式環(huán)境問(wèn)題,不想再研究了,回退對(duì)StaticFile的修改。

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Vue3請(qǐng)求后端接口實(shí)現(xiàn)方式
- vue3配置代理實(shí)現(xiàn)axios請(qǐng)求本地接口返回PG庫(kù)數(shù)據(jù)
- Vue通過(guò)axios異步請(qǐng)求后端接口的方法
- 前端+接口請(qǐng)求實(shí)現(xiàn)vue動(dòng)態(tài)路由
- Vue中Axios配置不同的baseURL,請(qǐng)求不同的域名接口方式
- Ruoyi-Vue處理跨域問(wèn)題同時(shí)請(qǐng)求多個(gè)域名接口(前端處理方法)
- vue3 reactive 請(qǐng)求接口數(shù)據(jù)賦值后拿不到的問(wèn)題及解決方案
相關(guān)文章
vue+Element-ui前端實(shí)現(xiàn)分頁(yè)效果
這篇文章主要為大家詳細(xì)介紹了vue+Element-ui前端實(shí)現(xiàn)分頁(yè)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-11-11
Vue實(shí)現(xiàn)Header漸隱漸現(xiàn)效果的實(shí)例代碼
這篇文章主要介紹了Vue實(shí)現(xiàn)Header漸隱漸現(xiàn)效果,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11
vue?cli3?項(xiàng)目中如何使用axios發(fā)送post請(qǐng)求
這篇文章主要介紹了vue?cli3?項(xiàng)目中如何使用axios發(fā)送post請(qǐng)求,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04
關(guān)于vue利用postcss-pxtorem進(jìn)行移動(dòng)端適配的問(wèn)題
這篇文章主要介紹了關(guān)于vue利用postcss-pxtorem進(jìn)行移動(dòng)端適配的問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
vue項(xiàng)目打包清除console.log的四種方法總結(jié)
大家在項(xiàng)目開(kāi)發(fā)的時(shí)候,需要看看一些后端接口返回的結(jié)果,會(huì)多次使用console.log項(xiàng)目開(kāi)發(fā)完成打包的時(shí)候,發(fā)現(xiàn)控制臺(tái)一堆的console.log,非常頭疼,下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目打包清除console.log的四種方法,需要的朋友可以參考下2023-04-04
Element-UI中<el-cascader?/>回顯失敗問(wèn)題的完美解決
我們?cè)谑褂胑l-cascader控件往數(shù)據(jù)庫(kù)保存的都是最后一級(jí)的數(shù)據(jù),那如果再次編輯此條數(shù)據(jù)時(shí),直接給el-cascader傳入最后一級(jí)的數(shù)據(jù),它是不會(huì)自動(dòng)勾選的,下面這篇文章主要給大家介紹了關(guān)于Element-UI中<el-cascader?/>回顯失敗問(wèn)題的完美解決辦法,需要的朋友可以參考下2023-01-01
Vue中$nextTick實(shí)現(xiàn)源碼解析
這篇文章主要為大家介紹了Vue中$nextTick實(shí)現(xiàn)源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10

