IIS上vue打包后接口跨域解決


首先要說下,跨域分為開發環境和生產環境:

  • 開發環境:解決跨域通常是在配置文件中使用proxy進行反代理(這個根據具體的vue版本具體配置不同,最好去官網搜索)
  • 生產環境:通常需要使用反代理了(網上搜的)

而我這里本地開發使用的是電腦的iis服務器,經過網上查詢使用,解決如下:
1.下載安裝ARR,地址為https://www.iis.net/downloads/microsoft/application-request-routing
2.下載安裝urlrewrite,地址為https://www.iis.net/downloads/microsoft/url-rewrite
3.配置ARR
以上安裝完后,重新打開iis,按下圖紅框操作
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
4.配置url重寫,網上好多是直接在網站的重寫里面配置的,這里可以直接在打包的dist目錄下增加一個web.config文件(下面代碼最開始是解決mode是history,頁面空白的問題,現在增加反代理直接就在這里增加了)
我的后端接口路徑是http://192.168.1.101:8000/對應接口名字
注意:在打包時訪問接口要對應其服務器的url,通常我們會根據開發環境或生產環境配置baseUrl,進而對axios進行封裝

 
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="url" 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="http://192.168.1.101:8000/{R:0}" />
        </rule>                
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM