.Net Core Web API 服务器搭建和自定义IP和端口

服务器操作系统 Windows Server 2012 R2 Datacenter (带界面)(之前在 Windows Server 2008 R2 上安装netcoreapp3.1  )多次搭建不好)

1.安装IIS 参考 https://blog.csdn.net/muzizongheng/article/details/85228929

2.安装 dotnet-hosting-3.1.13-win  下载地址 https://dotnet.microsoft.com/download/dotnet/3.1     widnwos Hosting Bundle 下载

 

 3.安装vc_redist.x64.exe  下载地址 https://www.microsoft.com/zh-CN/download/details.aspx?id=53840

安装完毕重启服务器 

4.创建Api文件夹,做为放置Web Api文件的根目录,权限设置可写  

5.Web Api 程序版本  Vs2019开发 + NSwag.AspNetCore(13.6.2) 【Swagger 】 ,在Startup.cs中配置NSwag,参考https://www.cnblogs.com/caijt/p/11875905.html

6.修改Web Api的接口根地址和默认的5000端口,Web Api默认的根地址是localhost:5000 ,打开Program.cs

public static void Main(string[] args)
        {
            Host.CreateDefaultBuilder(args)
                .UseIdHelper()
                .UseLog()
                .UseCache()
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder
                        .UseUrls("http://*:8003")  // 这里默认是http://*:5000 .现在改成8003端口
                        .UseStartup<Startup>();
                })
                .Build()
                .Run();
        }

 

appsettings.json中  "WebRootUrl": "http://121.15.220.10:8003" //接口根地址 ,默认是 http://localhost:5000   121.15.220.10 是服务器IP

修改完成后,点击发布,把发布完成的文件复制到服务器api文件夹内
。注意:vs2019中,发布的框架版本 netcoreapp3.1  和服务器上安装的.net core版本必须一致

 

 

7. 打开swagger测试页面,目前还没有搭建任何iis网站设置,现在使用不依赖iis的情况下,访问swagger测试页面

console host,把文件部署产生的dll 复制到目标机器,直接用dotnet命令行启动web工程的dll

在服务器打开api文件夹,在文件夹空白处,按下Shift + 鼠标右键菜单,点击"在此处打开命令窗口",

 

 

输入 dotnet coldairarrow.api.dll   这里是 项目名.dll  我的web Api项目名称是“coldairarrow.api”

 

 然后打开浏览器,输入http://服务器IP地址:8003/swagger/ ,就可以正常打开 测试页面了,不需要任何IIS配置,关闭这个cmd,http://服务器IP地址:8003/swagger/  也无法打开了。

8.下边开始配置IIS

新建网站,不需要先设置程序池,ip地址选择下拉默认的内网地址,不需要写公网地址(写了会访问出错),端口为8003,和上边设置的一致

 

 

 创建完成后,api程序池默认是这样的,无需修改为“无托管代码”一样可以正常运行 http://服务器公网IP地址:8003/swagger/。换成“无托管代码”,也是可以运行正常

 

 高级设置保持默认不修改

 

 所有设置全部完成

 

最后几张截图

点击网站->模块,全程没有出现过 AspNetCoreModule ,只有 AspNetCoreModuleV2,一样正常运行

 

 

 感觉最重要的是服务器上的.net core runtime版本要和vs2019发布时候的目标框架版本一致

测试代码下载地址 http://www.mamicode.com/info-detail-3078753.html  开发工具使用的是Visual Studio 2019  使用的是Asp.Net Core平台,开发所有业务,向前台提供Rest API接口

其他参考

https://www.cnblogs.com/ugvnui/p/11706724.html

https://www.jb51.net/article/88128.htm (服务器上并没有安装Node.js)

posted on 2021-03-14 09:10  土金豪  阅读(2522)  评论(0编辑  收藏  举报