在IIS中部署前後端應用,多麼痛的領悟!

2022-01-09 21:30:07 字數 1787 閱讀 2669

目前手上的web專案是前後端分離的,所以有時也會倒騰vue框架。

前後端應用最終以容器形態、在k8s中部署, 為此我搭建了基於gitlab flow的devops流程。

在devops實踐中,容器部署成為良方和事實標準 。

但是在feature開發和自測階段,不能濫打容器映象,同時為了遮蔽學習成本(不是所有同事都會容器、都會nginx、都會centos),前後端團隊還需要乙個友好的聯調+自測的驗證環境

最友好、最順手的web伺服器當屬iis,(後端api已經使用webdeploy部署到iis),本文記錄使用iis託管vue前端應用的姿勢。

前置條件:安裝iis、url-rewrite module !!!我們以github上vue todo應用為例,執行yarn build

如果build成功,你會發現生成了乙個dist靜態資源資料夾。

將yarn生成的dist資料夾拷貝到隨意位置,並新增以下web.config檔案, 這個檔案實際是我們在iis url-rewrite module上配置的結果。

點選確定

nice! 現在你的vue靜態應用就執行在iis上。

but, 在前後端分離模式中,我們的vue應用不僅有靜態資源,還要發起動態api請求。

一般情況下webpack打包後的api請求路徑是/, 會嘗試請求同網域名稱下api資源, 實際並不存在。

我們需要將對vue應用的api請求**到真實後端位址。

vue應用站點還要充當一部分反向**伺服器的作用。

假設真實後端api位址以部署在10.200.200.157:8091位址上,api以/api為字首。

下面利用url-rewrite module反向** vue api請求到真實後端:

點選站點功能檢視---> url重寫---> 新增入站規則

url重寫的結果其實就是下面的web.config檔案

<?xml version="1.0" encoding="utf-8"?>

注意: 黃色背景行便是反向**規則reverseproxyinboundrule, 注意反向**規則要在靜態資源規則resourcetoindex的前面。

這樣我們就完成了在前後端分離開發模式下,使用iis託管vue應用的全過程。

可算解決了前後端團隊開發sprint初期開發的痛點,我把這個問題定義為[效率工具]類,有興趣的讀者可以試一試。

在Tomcat中部署web應用

對tomcat部署web應用的方式總結,常見的有以下四種 1,使用控制台部署 訪問http localhost 8080,並通過tomcat manager登入,進入部署介面即可。2,利用tomcat自動部署 3,修改server.xml檔案部署 用ue或editplus開啟tomcat位於conf...

在tomcat中部署多個應用

一 修改conf目錄下的server.xml 將第乙個專案的service標籤複製乙份,修改內容如下 1.service標籤的name屬性,比如catalina2 2.connector標籤的port屬性,比如8081 3.engine標籤的name屬性,比如catalina2 二 新增catali...

在IIS 7 5中部署Web專案

在以前的web專案中使用的是iis 6.0,這次專案的伺服器使用的作業系統是windows server 2008,web伺服器用的是iis 7.5 在初步部署的時候出現了很多的錯誤,網上查閱了很多資料,總算是把專案部署完成了。下面把主要的步驟記錄下來。專案使用microsoft visual st...