iis部署前后端分离项目全过程(Vuet前端和.NET6后端)
安装iis
提示:非常重要:
如果电脑没有自带iis管理器,打开控制面板->程序->启用或关闭Windows功能,勾选iis安装即可

一、部署前端项目
打开iis,添加网站,物理路径指向前端打包后文件夹

此时浏览器打开http://localhost:3000即可正常访问,但是输入其它路由刷新会404

★解决iis部署后vue、react项目刷新404问题
安装url重写功能
下载地址:https://www.iis.net/downloads/microsoft/url-rewrite

添加规则:下载安装后,重启iis后,找到站点,进入URL重写模块,添加空白规则

名称随意,选择与模式匹配、通配符、*
添加两个条件:不是文件,不是目录
最后重写url指向index.html即可

重启站点,刷新不再404。
二、部署后端
部署后端程序之前,必须检查IIS模块中是否有AspNetCoreModuleV2。
双击模块,查看列表中时候有AspNetCoreModuleV2,如果没有就需要安装.NET运行环境。
如果没有必须安装对应的.NET运行版本,我安装的是aspnetcore-runtime-6.0.36-win-x64.exe,
下载地址为:https://dotnet.microsoft.com/zh-cn/download/dotnet/thank-you/runtime-aspnetcore-6.0.36-windows-arm64-binaries
下载好之后就可以傻瓜式双击安装(一直下一步)。
安装好.NET环境后,把对应的后端部署到位。
三、前端反向代理设置
前端请求接口地址是:http://localhost:3000/api/test
实际需要转发到:http://localhost:3001/test
1.安装Application Request Routing功能
下载地址:https://www.iis.net/downloads/microsoft/application-request-routing:
2.开启反向代理
安装好重启iis,打开Application Request Routing,然后点击Server Proxy Settings…,再勾选Enable proxy


3.添加代理规则
回到web站点,添加空白规则,与模式匹配,通配符,*api/*重写URL,http://127.0.0.1:3001/{R:2},勾选停止处理后续规则,为啥是{R:2},通配符测试,因为我的后台没有api前缀,如果后台有/api可以用{R:0}
如果启用了swaggerUI,也需要设置proxy反向代理,否则提示404错误,添加URL重定向的空白入栈规则
规则顺序
至此,重启站点,打开http://192.168.50.126/api/index.html,也能访问,这样前端和后端接口就像是部署在一个端口下面。
总结
在IIS上部署前后端分离的项目,其实就是这么简单,检查.NET运行环境,配置前后端站点,设置代理,配置空白入站规则。
相关文章
asp.net实现XML文件读取数据绑定到DropDownList的方法
这篇文章主要介绍了asp.net实现XML文件读取数据绑定到DropDownList的方法,结合实例形式分析了asp.net针对xml文件操作及DropDownList控件的使用技巧,需要的朋友可以参考下2017-02-02
Visual Studio 2017下ASP.NET CORE的TagHelper智能提示解决办法
这篇文章主要为大家详细介绍了Visual Studio 2017下ASP.NET CORE TagHelper智能提示的解决办法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-03-03
Entity Framework Core中执行SQL语句和存储过程的方法介绍
这篇文章介绍了Entity Framework Core中执行SQL语句和存储过程的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-02-02
Visual Studio 2017 (VS 2017)离线安装包制作方法
这篇文章主要为大家详细介绍了Visual Studio 2017离线安装包的制作方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-03-03


最新评论