本地部署IIS服务及MQTT服务

概述

ASP .NET Core3.1项目创建IIS服务和mqtt服务。

配置IIS

安装windows功能

在控制面板-程序和功能-启用或关闭windows功能中,按照下图中的选项勾选相应内容,联网安装IIS相关服务。在这里插入图片描述

配置应用程序

打开IIS服务

在控制面板-管理工具中(控制面板中找不到的话选择"小图标")找到Internet Information Services (IIS)管理器。
在这里插入图片描述

安装aspnetcore-runtime

下载链接:https://dotnet.microsoft.com/download/dotnet-core/3.1

安装dotnet-hosting

下载链接: https://www.microsoft.com/net/permalink/dotnetcore-current-windows-runtime-bundle-installer

检查

在这里插入图片描述
上述两个包安装完成后,点击本地服务器,在模块选项中应该可以看到AspNetCoreModuleV2这个模块。

添加网站

在这里插入图片描述
在网站名称填入网站项目名称,物理路径填发布项目的物理路径,绑定IP地址和端口号。

配置应用程序

在这里插入图片描述
网站配置完成后,点击左侧的应用程序池菜单栏会自动出现网站的应用程序,点击基本配置,设置为“无托管代码”。项目启动后,点击网站,可以访问网站就配置完成了。

配置IIS通过外部IP访问

修改.vs配置文件

在项目路径下..vs\xxx\config中找到applicationhost.config文件,找到下图位置
在这里插入图片描述

原始应该只绑定了localhost,在后面增加电脑的外网IP

命令行设置

cmd 输入:netsh http add urlacl url=http://192.168.1.107:1111/ user=everyone

防火墙设置端口对外访问

1.打开windows安全中心-防火墙和网络保护-高级设置
打开windows安全中心-防火墙和网络保护-高级设置
2.入站规则-新建规则-端口
在这里插入图片描述
3.特定本地端口,填入项目的端口号,后面全部下一步,然后起个名字就OK。
在这里插入图片描述

配置MQTT服务

下载安装启动

前后端分离项目,后端通过MQTT消息向前端主动推送数据,本项目使用emqx进行开发,在windows环境下。
1.下载emqx
下载链接:https://www.emqx.cn/downloads#broker
打开链接,选择windows版本
2.配置emqx
打开链接:127.0.0.1:8083进入配置页面,默认用户名:admin密码public
3.启动emqx
在安装路径下的emqx/bin路径下通过cmd输入命令行:emqx start。服务就启动了
4.各种指令
可以参考官方文档:https://docs.emqx.cn/cn/broker/latest/getting-started/command-line.html

缺少MSVCR120.DLL文件报错

有些情况打开服务时会报错,提示缺少MSVCR120.DLL文件,基本上是因为缺少了一些c++文件,通过DirectX工具进行安装即可。

服务对外访问

1.首先按照之前的IIS对外访问步骤中的防火墙设置,入站规则中开放对外端口,通常MQTT的端口设置为1883,8083,18083.
2.在路由器设置中找到地址转换-虚拟服务器-新增虚拟服务器
在这里插入图片描述
按照如图的配置,设置外网访问的IP和端口号。
3.后台项目也需要将BrokerHostName和BrokerPort设置为对应的主机地址和端口号。
4.一个主机IP对应一个MQTT服务,若需要多个项目发送MQTT消息,则需要安装虚拟机。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值