ASP.NET Core 入门(4)(IIS 部署前后端站点)
.NET Core发布部署的文章园内有很多了,大家可以自行百度,该篇主要想总结需要注意的地方,列举前后端(比如前段 Vue,后端 WebAPI)在同一台服务器上的主要两种方式。
两种方式:
1. 前后端不同站点,。(也就是两个端口)
2. 前后端一个站点。(只需要一个端口)
在部署环境上下载安装SDK,注意下载的版本一定要和你编译使用的版本一致,不然部署到IIS会报错。
具体.Net Core版本、SDK版本、Runtime版本的对照关系见官网:
Runtime(winth hosting) + SDK: https://dotnet.microsoft.com/download
另,如果想在.NET Core 项目指定SDK版本,可以参考如下命令操作:
D:\proj\mq\test>dotnet --list-sdks
2.1. [C:\Program Files\dotnet\sdk]
2.1. [C:\Program Files\dotnet\sdk]
3.0. [C:\Program Files\dotnet\sdk] D:\proj\mq\test>dotnet new console -o testproj
Getting ready...
The template "Console Application" was created successfully. Processing post-creation actions...
Running 'dotnet restore' on testproj\testproj.csproj...
D:\proj\mq\test\testproj\testproj.csproj ???? 83.4 ms ???? Restore succeeded. D:\proj\mq\test>dotnet --version
3.0. D:\proj\mq\test>cd testproj D:\proj\mq\test\testproj>dotnet new global.json --sdk-version 2.1.500
The template "global.json file" was created successfully. D:\proj\mq\test\testproj>dotnet --version
2.1.
前后端不同站点
// NetCore 后端部分
0、编译项目,保证代码没问题,并配置 CORS 跨域服务;
app.UseCors (builder => builder
.AllowAnyOrigin ()
.AllowAnyMethod ()
.AllowAnyHeader ()
.AllowCredentials ());
①、发布项目;//一般 publish 路径是 bin/Debug/netcore2.2
②、拷贝到服务器指定文件夹;
③、IIS 添加站点;// 端口 1001
④、修改应用程序池为“无托管”;//这也是为啥要安装 windows hosting 的原因
⑤、安装 windows hosting(服务托管);//这是一个捆包,已经包含 Runtime
⑥、重启项目,查看是否正常;http://localhost:1001/
// Vue 前端部分
①、Build 项目;
②、拷贝到服务器指定文件夹;
③、IIS 添加站点;// 端口 1002
④、运行项目,查看是否正常;http://localhost:1002/
前后端一个站点
操作步骤和上边的其实是几乎一样的,只不过我们不需要配置 CORS 跨域了,因为是同一个站点,且是只需要一个端口号。
// NetCore 后端部分,和上边的几乎一样,只不过不用进行 CORS 跨域设置
①、发布项目;
②、拷贝到服务器指定文件夹;
③、IIS 添加站点;// 端口 1003
④、修改应用程序池为“无托管”;//这也是为啥要安装 windows hosting 的原因
⑤、安装 windows hosting(服务托管);//这是一个捆包,已经包含 Runtime
⑥、重启项目,查看是否正常;http://localhost:1003/
// Vue 前端部分
①、修改根路径,并且 Build 项目;// 还要修改接口api的路径
②、拷贝到服务器指定文件夹;//可以和 core 项目放到一起
③、修改 Core 的 IIS 站点,在它的站点内,嵌套一个vue站点(在Core的IIS站点右键选择“添加应用程序”);// 取名为 Vue
④、运行项目,查看是否正常;http://localhost:1003/vue/
最后一点,其实你还可以通过CLI来运行你发布的程序,切换到你发布文件夹下,输入以下命令:
dotnet NetCoreProj.API.dll
ASP.NET Core 入门(4)(IIS 部署前后端站点)的更多相关文章
- RoadFlow ASP.NET Core工作流引擎IIS部署
RoadFlow最新版本采用ASP.NET CORE2.1开发,部署步骤和.NET CORE部署一样,具体可参数ASP.NET CORE的部署方式. 1. 获取代码 首先从RoadFlow官网下载最新 ...
- CentOS开发ASP.NET Core入门教程
作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9891346.html 因为之前一直没怎么玩过CentOS,大多数时间都是使用Win10进行开发,然后程序 ...
- ASP.NET Core入门(一)
大家好,很荣幸您点了开此篇文章,和我一起来学习ASP.NET Core,此篇文字为<ASP.NET Core入门>系列中的第一篇,本系列将以一个博客系统为例,从第一行代码,到系统发布上线( ...
- ASP.NET CORE 入门教程(附源码)
ASP.NET CORE 入门教程 第一课 基本概念 基本概念 Asp.Net Core Mvc是.NET Core平台下的一种Web应用开发框架 符合Web应用特点 .NET Core跨平台解决方案 ...
- ASP.NET Core入门
一.搭建开发环境 在Windows平台下,开发.NET Core 程序需要安装如下内容: 1. .NET Core runtime 2. Visual Studio 2015 with Update ...
- ASP.NET Core ASP.NET Core+MVC搭建及部署
ASP.NET Core+MVC搭建及部署 一.创建项目: 1.选择ASP.NET Core Web Application(.NET Core) 注意框架 2.选择Web Application: ...
- windows/Linux下设置ASP.Net Core开发环境并部署应用
10分钟学会在windows/Linux下设置ASP.Net Core开发环境并部署应用 创建和开发ASP.NET Core应用可以有二种方式:最简单的方式是通过Visual Studio 2017 ...
- [转]Publishing and Running ASP.NET Core Applications with IIS
本文转自:https://weblog.west-wind.com/posts/2016/Jun/06/Publishing-and-Running-ASPNET-Core-Applications- ...
- ASP.NET Core 入门教程 10、ASP.NET Core 日志记录(NLog)入门
一.前言 1.本教程主要内容 ASP.NET Core + 内置日志组件记录控制台日志 ASP.NET Core + NLog 按天记录本地日志 ASP.NET Core + NLog 将日志按自定义 ...
随机推荐
- linux内核是如何支持深度睡眠(deep sleep)方式的?
1. 硬件架构 arm64 2. 内核版本 4.19 3. 分析相关函数 setup_arch() -> psci_dt_init() -> psci_0_2_init() -> g ...
- 分享调试SI4432的一些小经验(转)
分享调试SI4432的一些小经验 最近使用 STM8F103 + SI4432 调无线,遇到问题不少,此处有参考过前辈的经验: 1.硬件把板给到我时USB烧录线带供电(5V),此供电接到LDO输出,就 ...
- keras Model 3 共享的层
1 入门 2 多个输入和输出 3 共享层 考虑这样的一个问题:我们要判断连个tweet是否来源于同一个人. 首先我们对两个tweet进行处理,然后将处理的结构拼接在一起,之后跟一个逻辑回归,输出这两条 ...
- Ionic4.x 创建页面以及页面跳转
创建页面: 1.cd 到项目目录 2.通过ionic g page 页面名称 3.创建完成组件以后会在 src 目录下面多一个 button 的目录,它既是一个页面也是一个 模块. 4.如果我们想在 ...
- 009-Linux nohup
一.基础概述 1./dev/null 可以将/dev/null看作"黑洞". 它非常等价于一个只写文件. 所有写入它的内容都会永远丢失. 而尝试从它那儿读取内容则什么也读不到. 然 ...
- jmeter分布式遇到的问题记录
遇到的问题记录: 问题一: 配置好执行机和调度机后,调度机跑执行机器出现下面的报错 java.io.FileNotFoundException:rmi_keystore.jks(系统找不到指定的文件) ...
- CentOS7下配置Tomcat以APR模式+Tomcat Native运行
在慢速网络上Tomcat线程数开到300以上的水平,不配APR,基本上300个线程狠快就会用满,以后的请求就只好等待.但是配上APR之后,Tomcat将以JNI的形式调用Apache HTTP服务器的 ...
- python中简化的验证码功能
验证码一般用来验证登陆.交易等行为,减少对端为机器操作的概率,python中可以使用random模块,char()内置函数来实现一个简单的验证码功能. import random def veri_c ...
- Kafka——副本(Replica)机制
副本定义 Kafka 是有主题概念的,而每个主题又进一步划分成若干个分区.副本的概念实际上是在分区层级下定义的,每个分区配置有若干个副本. 所谓副本(Replica),本质就是一个只能追加写消息的提交 ...
- Java使用PegDown将markdown文件转成html格式
maven依赖: <dependency> <groupId>org.pegdown</groupId> <artifactId>pegdown< ...